Amazon CloudFront · Schema

DistributionConfig

DistributionConfig schema

CloudFrontCDNContent DeliveryEdge

Properties

Name Type Description
CallerReference string A unique value that ensures the request can't be replayed.
Aliases object CNAMEs (alternate domain names) for the distribution.
DefaultRootObject string The object that you want CloudFront to return when an end user requests the root URL.
Origins object
DefaultCacheBehavior object
CacheBehaviors object
Comment string A comment to describe the distribution.
Enabled boolean Whether the distribution is enabled to accept user requests.
PriceClass string The price class for the distribution.
ViewerCertificate object
WebACLId string The AWS WAF web ACL to associate with this distribution.
HttpVersion string
IsIPV6Enabled boolean
View JSON Schema on GitHub

JSON Schema

cloudfront-distribution-config-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-cloudfront/refs/heads/main/json-schema/cloudfront-distribution-config-schema.json",
  "title": "DistributionConfig",
  "description": "DistributionConfig schema",
  "type": "object",
  "properties": {
    "CallerReference": {
      "type": "string",
      "description": "A unique value that ensures the request can't be replayed."
    },
    "Aliases": {
      "type": "object",
      "properties": {
        "Quantity": {
          "type": "integer"
        },
        "Items": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "description": "CNAMEs (alternate domain names) for the distribution."
    },
    "DefaultRootObject": {
      "type": "string",
      "description": "The object that you want CloudFront to return when an end user requests the root URL."
    },
    "Origins": {
      "type": "object",
      "properties": {
        "Quantity": {
          "type": "integer"
        },
        "Items": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Origin"
          }
        }
      }
    },
    "DefaultCacheBehavior": {
      "$ref": "#/components/schemas/CacheBehavior"
    },
    "CacheBehaviors": {
      "type": "object",
      "properties": {
        "Quantity": {
          "type": "integer"
        },
        "Items": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/CacheBehavior"
          }
        }
      }
    },
    "Comment": {
      "type": "string",
      "description": "A comment to describe the distribution."
    },
    "Enabled": {
      "type": "boolean",
      "description": "Whether the distribution is enabled to accept user requests."
    },
    "PriceClass": {
      "type": "string",
      "enum": [
        "PriceClass_100",
        "PriceClass_200",
        "PriceClass_All"
      ],
      "description": "The price class for the distribution."
    },
    "ViewerCertificate": {
      "type": "object",
      "properties": {
        "CloudFrontDefaultCertificate": {
          "type": "boolean"
        },
        "ACMCertificateArn": {
          "type": "string"
        },
        "SSLSupportMethod": {
          "type": "string",
          "enum": [
            "sni-only",
            "vip",
            "static-ip"
          ]
        },
        "MinimumProtocolVersion": {
          "type": "string"
        }
      }
    },
    "WebACLId": {
      "type": "string",
      "description": "The AWS WAF web ACL to associate with this distribution."
    },
    "HttpVersion": {
      "type": "string",
      "enum": [
        "http1.1",
        "http2",
        "http3",
        "http2and3"
      ]
    },
    "IsIPV6Enabled": {
      "type": "boolean"
    }
  },
  "required": [
    "CallerReference",
    "Origins",
    "DefaultCacheBehavior",
    "Comment",
    "Enabled"
  ]
}