Amazon CloudFront · JSON Structure

Cloudfront Distribution Config Structure

DistributionConfig schema

Type: object Properties: 13 Required: 5
CloudFrontCDNContent DeliveryEdge

DistributionConfig is a JSON Structure definition published by Amazon CloudFront, describing 13 properties, of which 5 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

CallerReference Aliases DefaultRootObject Origins DefaultCacheBehavior CacheBehaviors Comment Enabled PriceClass ViewerCertificate WebACLId HttpVersion IsIPV6Enabled

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-cloudfront/refs/heads/main/json-structure/cloudfront-distribution-config-structure.json",
  "name": "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": "int32"
        },
        "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": "int32"
        },
        "Items": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Origin"
          }
        }
      }
    },
    "DefaultCacheBehavior": {
      "$ref": "#/components/schemas/CacheBehavior"
    },
    "CacheBehaviors": {
      "type": "object",
      "properties": {
        "Quantity": {
          "type": "int32"
        },
        "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"
  ]
}