{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-config-organizationconformancepack.json",
  "title": "AWSConfigOrganizationConformancePackProperties",
  "description": "Resource schema for AWS::Config::OrganizationConformancePack.. Source:- <https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-config.git>",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-config-organizationconformancepack.json",
    "sourceSha256": "3270a19701a1f5f37b26fc960172cb17340b537acca2ffbbddd31412cb5820b6"
  },
  "type": "object",
  "properties": {
    "OrganizationConformancePackName": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "[a-zA-Z][-a-zA-Z0-9]*",
          "minLength": 1,
          "maxLength": 128
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The name of the organization conformance pack."
    },
    "TemplateS3Uri": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "s3://.*",
          "minLength": 1,
          "maxLength": 1024
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "Location of file containing the template body."
    },
    "TemplateBody": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 51200
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "A string containing full conformance pack template body."
    },
    "DeliveryS3Bucket": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 0,
          "maxLength": 63
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "AWS Config stores intermediate files while processing conformance pack template."
    },
    "DeliveryS3KeyPrefix": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 0,
          "maxLength": 1024
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The prefix for the delivery S3 bucket."
    },
    "ConformancePackInputParameters": {
      "description": "A list of ConformancePackInputParameter objects.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/ConformancePackInputParameter"
      },
      "minItems": 0,
      "maxItems": 60
    },
    "ExcludedAccounts": {
      "description": "A list of AWS accounts to be excluded from an organization conformance pack while deploying a conformance pack.",
      "type": "array",
      "items": {
        "$ref": "#/$defs/AccountId"
      },
      "minItems": 0,
      "maxItems": 1000
    }
  },
  "typeName": "AWS::Config::OrganizationConformancePack",
  "$defs": {
    "ConformancePackInputParameter": {
      "description": "Input parameters in the form of key-value pairs for the conformance pack.",
      "type": "object",
      "properties": {
        "ParameterName": {
          "$ref": "#/$defs/ParameterName"
        },
        "ParameterValue": {
          "$ref": "#/$defs/ParameterValue"
        }
      },
      "required": [
        "ParameterName",
        "ParameterValue"
      ],
      "title": "AWSConfigOrganizationConformancePackConformancePackInputParameterDefinition"
    },
    "ParameterName": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 0,
          "maxLength": 255
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "title": "AWSConfigOrganizationConformancePackParameterNameDefinition"
    },
    "ParameterValue": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 0,
          "maxLength": 4096
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "title": "AWSConfigOrganizationConformancePackParameterValueDefinition"
    },
    "AccountId": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "title": "AWSConfigOrganizationConformancePackAccountIdDefinition"
    }
  },
  "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-config.git",
  "documentationUrl": "https://docs.aws.amazon.com/config/latest/developerguide/conformance-pack-organization-apis.html",
  "additionalProperties": false,
  "primaryIdentifier": [
    "/properties/OrganizationConformancePackName"
  ],
  "required": [
    "OrganizationConformancePackName"
  ],
  "writeOnlyProperties": [
    "/properties/TemplateBody",
    "/properties/TemplateS3Uri"
  ],
  "createOnlyProperties": [
    "/properties/OrganizationConformancePackName"
  ]
}
