{
 "additionalProperties": false,
 "createOnlyProperties": [
  "/properties/ProjectName",
  "/properties/ProjectType"
 ],
 "definitions": {
  "AudioExtractionCategory": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "TypeConfiguration": {
     "$ref": "#/definitions/AudioExtractionCategoryTypeConfiguration"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/AudioExtractionCategoryType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "AudioExtractionCategoryType": {
   "enum": [
    "AUDIO_CONTENT_MODERATION",
    "TRANSCRIPT",
    "TOPIC_CONTENT_MODERATION"
   ],
   "type": "string"
  },
  "AudioExtractionCategoryTypeConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Transcript": {
     "$ref": "#/definitions/TranscriptConfiguration"
    }
   },
   "type": "object"
  },
  "AudioGenerativeOutputLanguage": {
   "enum": [
    "DEFAULT",
    "EN"
   ],
   "type": "string"
  },
  "AudioLanguageConfiguration": {
   "additionalProperties": false,
   "properties": {
    "GenerativeOutputLanguage": {
     "$ref": "#/definitions/AudioGenerativeOutputLanguage"
    },
    "IdentifyMultipleLanguages": {
     "type": "boolean"
    },
    "InputLanguages": {
     "items": {
      "$ref": "#/definitions/Language"
     },
     "type": "array"
    }
   },
   "type": "object"
  },
  "AudioOverrideConfiguration": {
   "additionalProperties": false,
   "properties": {
    "LanguageConfiguration": {
     "$ref": "#/definitions/AudioLanguageConfiguration"
    },
    "ModalityProcessing": {
     "$ref": "#/definitions/ModalityProcessingConfiguration"
    },
    "SensitiveDataConfiguration": {
     "$ref": "#/definitions/SensitiveDataConfiguration"
    }
   },
   "type": "object"
  },
  "AudioStandardExtraction": {
   "additionalProperties": false,
   "properties": {
    "Category": {
     "$ref": "#/definitions/AudioExtractionCategory"
    }
   },
   "required": [
    "Category"
   ],
   "type": "object"
  },
  "AudioStandardGenerativeField": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/AudioStandardGenerativeFieldType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "AudioStandardGenerativeFieldType": {
   "enum": [
    "AUDIO_SUMMARY",
    "IAB",
    "TOPIC_SUMMARY"
   ],
   "type": "string"
  },
  "AudioStandardOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Extraction": {
     "$ref": "#/definitions/AudioStandardExtraction"
    },
    "GenerativeField": {
     "$ref": "#/definitions/AudioStandardGenerativeField"
    }
   },
   "type": "object"
  },
  "BlueprintItem": {
   "additionalProperties": false,
   "properties": {
    "BlueprintArn": {
     "maxLength": 128,
     "pattern": "^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:(aws|[0-9]{12}):blueprint/(bedrock-data-automation-public-[a-zA-Z0-9-_]{1,30}|[a-zA-Z0-9-]{12,36})$",
     "type": "string"
    },
    "BlueprintStage": {
     "$ref": "#/definitions/BlueprintStage"
    },
    "BlueprintVersion": {
     "maxLength": 128,
     "minLength": 1,
     "pattern": "^[0-9]*$",
     "type": "string"
    }
   },
   "required": [
    "BlueprintArn"
   ],
   "type": "object"
  },
  "BlueprintStage": {
   "enum": [
    "DEVELOPMENT",
    "LIVE"
   ],
   "type": "string"
  },
  "ChannelLabelingConfiguration": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "CustomOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Blueprints": {
     "items": {
      "$ref": "#/definitions/BlueprintItem"
     },
     "type": "array"
    }
   },
   "type": "object"
  },
  "DataAutomationProjectStage": {
   "enum": [
    "DEVELOPMENT",
    "LIVE"
   ],
   "type": "string"
  },
  "DataAutomationProjectStatus": {
   "enum": [
    "COMPLETED",
    "IN_PROGRESS",
    "FAILED"
   ],
   "type": "string"
  },
  "DesiredModality": {
   "enum": [
    "DOCUMENT",
    "IMAGE",
    "VIDEO",
    "AUDIO"
   ],
   "type": "string"
  },
  "DocumentBoundingBox": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "DocumentExtractionGranularity": {
   "additionalProperties": false,
   "properties": {
    "Types": {
     "items": {
      "$ref": "#/definitions/DocumentExtractionGranularityType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "type": "object"
  },
  "DocumentExtractionGranularityType": {
   "enum": [
    "DOCUMENT",
    "PAGE",
    "ELEMENT",
    "WORD",
    "LINE"
   ],
   "type": "string"
  },
  "DocumentOutputAdditionalFileFormat": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "DocumentOutputFormat": {
   "additionalProperties": false,
   "properties": {
    "AdditionalFileFormat": {
     "$ref": "#/definitions/DocumentOutputAdditionalFileFormat"
    },
    "TextFormat": {
     "$ref": "#/definitions/DocumentOutputTextFormat"
    }
   },
   "required": [
    "AdditionalFileFormat",
    "TextFormat"
   ],
   "type": "object"
  },
  "DocumentOutputTextFormat": {
   "additionalProperties": false,
   "properties": {
    "Types": {
     "items": {
      "$ref": "#/definitions/DocumentOutputTextFormatType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "type": "object"
  },
  "DocumentOutputTextFormatType": {
   "enum": [
    "PLAIN_TEXT",
    "MARKDOWN",
    "HTML",
    "CSV"
   ],
   "type": "string"
  },
  "DocumentOverrideConfiguration": {
   "additionalProperties": false,
   "properties": {
    "ModalityProcessing": {
     "$ref": "#/definitions/ModalityProcessingConfiguration"
    },
    "SensitiveDataConfiguration": {
     "$ref": "#/definitions/SensitiveDataConfiguration"
    },
    "Splitter": {
     "$ref": "#/definitions/SplitterConfiguration"
    }
   },
   "type": "object"
  },
  "DocumentStandardExtraction": {
   "additionalProperties": false,
   "properties": {
    "BoundingBox": {
     "$ref": "#/definitions/DocumentBoundingBox"
    },
    "Granularity": {
     "$ref": "#/definitions/DocumentExtractionGranularity"
    }
   },
   "required": [
    "BoundingBox",
    "Granularity"
   ],
   "type": "object"
  },
  "DocumentStandardGenerativeField": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "DocumentStandardOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Extraction": {
     "$ref": "#/definitions/DocumentStandardExtraction"
    },
    "GenerativeField": {
     "$ref": "#/definitions/DocumentStandardGenerativeField"
    },
    "OutputFormat": {
     "$ref": "#/definitions/DocumentOutputFormat"
    }
   },
   "type": "object"
  },
  "ImageBoundingBox": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "ImageExtractionCategory": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/ImageExtractionCategoryType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "ImageExtractionCategoryType": {
   "enum": [
    "CONTENT_MODERATION",
    "TEXT_DETECTION",
    "LOGOS"
   ],
   "type": "string"
  },
  "ImageOverrideConfiguration": {
   "additionalProperties": false,
   "properties": {
    "ModalityProcessing": {
     "$ref": "#/definitions/ModalityProcessingConfiguration"
    },
    "SensitiveDataConfiguration": {
     "$ref": "#/definitions/SensitiveDataConfiguration"
    }
   },
   "type": "object"
  },
  "ImageStandardExtraction": {
   "additionalProperties": false,
   "properties": {
    "BoundingBox": {
     "$ref": "#/definitions/ImageBoundingBox"
    },
    "Category": {
     "$ref": "#/definitions/ImageExtractionCategory"
    }
   },
   "required": [
    "BoundingBox",
    "Category"
   ],
   "type": "object"
  },
  "ImageStandardGenerativeField": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/ImageStandardGenerativeFieldType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "ImageStandardGenerativeFieldType": {
   "enum": [
    "IMAGE_SUMMARY",
    "IAB"
   ],
   "type": "string"
  },
  "ImageStandardOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Extraction": {
     "$ref": "#/definitions/ImageStandardExtraction"
    },
    "GenerativeField": {
     "$ref": "#/definitions/ImageStandardGenerativeField"
    }
   },
   "type": "object"
  },
  "Language": {
   "enum": [
    "EN",
    "DE",
    "ES",
    "FR",
    "IT",
    "PT",
    "JA",
    "KO",
    "CN",
    "TW",
    "HK"
   ],
   "type": "string"
  },
  "ModalityProcessingConfiguration": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "type": "object"
  },
  "ModalityRoutingConfiguration": {
   "additionalProperties": false,
   "properties": {
    "jpeg": {
     "$ref": "#/definitions/DesiredModality"
    },
    "mov": {
     "$ref": "#/definitions/DesiredModality"
    },
    "mp4": {
     "$ref": "#/definitions/DesiredModality"
    },
    "png": {
     "$ref": "#/definitions/DesiredModality"
    }
   },
   "type": "object"
  },
  "OverrideConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Audio": {
     "$ref": "#/definitions/AudioOverrideConfiguration"
    },
    "Document": {
     "$ref": "#/definitions/DocumentOverrideConfiguration"
    },
    "Image": {
     "$ref": "#/definitions/ImageOverrideConfiguration"
    },
    "ModalityRouting": {
     "$ref": "#/definitions/ModalityRoutingConfiguration"
    },
    "Video": {
     "$ref": "#/definitions/VideoOverrideConfiguration"
    }
   },
   "type": "object"
  },
  "PIIEntitiesConfiguration": {
   "properties": {
    "PiiEntityTypes": {
     "items": {
      "$ref": "#/definitions/PIIEntityTypes"
     },
     "type": "array"
    },
    "RedactionMaskMode": {
     "$ref": "#/definitions/PIIRedactionMaskMode"
    }
   },
   "type": "object"
  },
  "PIIEntityTypes": {
   "enum": [
    "ALL",
    "ADDRESS",
    "AGE",
    "NAME",
    "EMAIL",
    "PHONE",
    "USERNAME",
    "PASSWORD",
    "DRIVER_ID",
    "LICENSE_PLATE",
    "VEHICLE_IDENTIFICATION_NUMBER",
    "CREDIT_DEBIT_CARD_CVV",
    "CREDIT_DEBIT_CARD_EXPIRY",
    "CREDIT_DEBIT_CARD_NUMBER",
    "PIN",
    "INTERNATIONAL_BANK_ACCOUNT_NUMBER",
    "SWIFT_CODE",
    "IP_ADDRESS",
    "MAC_ADDRESS",
    "URL",
    "AWS_ACCESS_KEY",
    "AWS_SECRET_KEY",
    "US_BANK_ACCOUNT_NUMBER",
    "US_BANK_ROUTING_NUMBER",
    "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER",
    "US_PASSPORT_NUMBER",
    "US_SOCIAL_SECURITY_NUMBER",
    "CA_HEALTH_NUMBER",
    "CA_SOCIAL_INSURANCE_NUMBER",
    "UK_NATIONAL_HEALTH_SERVICE_NUMBER",
    "UK_NATIONAL_INSURANCE_NUMBER",
    "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER"
   ],
   "type": "string"
  },
  "PIIRedactionMaskMode": {
   "enum": [
    "PII",
    "ENTITY_TYPE"
   ],
   "type": "string"
  },
  "SensitiveDataConfiguration": {
   "properties": {
    "DetectionMode": {
     "$ref": "#/definitions/SensitiveDataDetectionMode"
    },
    "DetectionScope": {
     "items": {
      "$ref": "#/definitions/SensitiveDataDetectionScope"
     },
     "type": "array"
    },
    "PiiEntitiesConfiguration": {
     "$ref": "#/definitions/PIIEntitiesConfiguration"
    }
   },
   "type": "object"
  },
  "SensitiveDataDetectionMode": {
   "enum": [
    "DETECTION",
    "DETECTION_AND_REDACTION"
   ],
   "type": "string"
  },
  "SensitiveDataDetectionScope": {
   "enum": [
    "STANDARD",
    "CUSTOM"
   ],
   "type": "string"
  },
  "SpeakerLabelingConfiguration": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "SplitterConfiguration": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "type": "object"
  },
  "StandardOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Audio": {
     "$ref": "#/definitions/AudioStandardOutputConfiguration"
    },
    "Document": {
     "$ref": "#/definitions/DocumentStandardOutputConfiguration"
    },
    "Image": {
     "$ref": "#/definitions/ImageStandardOutputConfiguration"
    },
    "Video": {
     "$ref": "#/definitions/VideoStandardOutputConfiguration"
    }
   },
   "type": "object"
  },
  "State": {
   "enum": [
    "ENABLED",
    "DISABLED"
   ],
   "type": "string"
  },
  "Tag": {
   "additionalProperties": false,
   "properties": {
    "Key": {
     "maxLength": 128,
     "minLength": 1,
     "pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$",
     "type": "string"
    },
    "Value": {
     "maxLength": 256,
     "minLength": 0,
     "pattern": "^[a-zA-Z0-9\\s._:/=+@-]*$",
     "type": "string"
    }
   },
   "required": [
    "Key",
    "Value"
   ],
   "type": "object"
  },
  "TranscriptConfiguration": {
   "additionalProperties": false,
   "properties": {
    "ChannelLabeling": {
     "$ref": "#/definitions/ChannelLabelingConfiguration"
    },
    "SpeakerLabeling": {
     "$ref": "#/definitions/SpeakerLabelingConfiguration"
    }
   },
   "type": "object"
  },
  "Unit": {
   "additionalProperties": false,
   "type": "object"
  },
  "VideoBoundingBox": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "VideoExtractionCategory": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/VideoExtractionCategoryType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "VideoExtractionCategoryType": {
   "enum": [
    "CONTENT_MODERATION",
    "TEXT_DETECTION",
    "TRANSCRIPT",
    "LOGOS"
   ],
   "type": "string"
  },
  "VideoOverrideConfiguration": {
   "additionalProperties": false,
   "properties": {
    "ModalityProcessing": {
     "$ref": "#/definitions/ModalityProcessingConfiguration"
    },
    "SensitiveDataConfiguration": {
     "$ref": "#/definitions/SensitiveDataConfiguration"
    }
   },
   "type": "object"
  },
  "VideoStandardExtraction": {
   "additionalProperties": false,
   "properties": {
    "BoundingBox": {
     "$ref": "#/definitions/VideoBoundingBox"
    },
    "Category": {
     "$ref": "#/definitions/VideoExtractionCategory"
    }
   },
   "required": [
    "BoundingBox",
    "Category"
   ],
   "type": "object"
  },
  "VideoStandardGenerativeField": {
   "additionalProperties": false,
   "properties": {
    "State": {
     "$ref": "#/definitions/State"
    },
    "Types": {
     "items": {
      "$ref": "#/definitions/VideoStandardGenerativeFieldType"
     },
     "type": "array",
     "uniqueItems": true
    }
   },
   "required": [
    "State"
   ],
   "type": "object"
  },
  "VideoStandardGenerativeFieldType": {
   "enum": [
    "VIDEO_SUMMARY",
    "IAB",
    "CHAPTER_SUMMARY"
   ],
   "type": "string"
  },
  "VideoStandardOutputConfiguration": {
   "additionalProperties": false,
   "properties": {
    "Extraction": {
     "$ref": "#/definitions/VideoStandardExtraction"
    },
    "GenerativeField": {
     "$ref": "#/definitions/VideoStandardGenerativeField"
    }
   },
   "type": "object"
  }
 },
 "primaryIdentifier": [
  "/properties/ProjectArn"
 ],
 "properties": {
  "CreationTime": {
   "format": "date-time",
   "type": "string"
  },
  "CustomOutputConfiguration": {
   "$ref": "#/definitions/CustomOutputConfiguration"
  },
  "KmsEncryptionContext": {
   "additionalProperties": false,
   "dependencies": {
    "KmsEncryptionContext": [
     "KmsKeyId"
    ]
   },
   "patternProperties": {
    "^.*$": {
     "type": "string"
    }
   },
   "type": "object"
  },
  "KmsKeyId": {
   "maxLength": 2048,
   "minLength": 1,
   "type": "string"
  },
  "LastModifiedTime": {
   "format": "date-time",
   "type": "string"
  },
  "OverrideConfiguration": {
   "$ref": "#/definitions/OverrideConfiguration"
  },
  "ProjectArn": {
   "maxLength": 128,
   "pattern": "^arn:aws(|-cn|-us-gov):bedrock:[a-zA-Z0-9-]*:(aws|[0-9]{12}):data-automation-project/[a-zA-Z0-9-]{12,36}$",
   "type": "string"
  },
  "ProjectDescription": {
   "type": "string"
  },
  "ProjectName": {
   "maxLength": 128,
   "minLength": 1,
   "pattern": "^[a-zA-Z0-9-_]+$",
   "type": "string"
  },
  "ProjectStage": {
   "$ref": "#/definitions/DataAutomationProjectStage"
  },
  "ProjectType": {
   "enum": [
    "ASYNC",
    "SYNC"
   ],
   "type": "string"
  },
  "StandardOutputConfiguration": {
   "$ref": "#/definitions/StandardOutputConfiguration"
  },
  "Status": {
   "$ref": "#/definitions/DataAutomationProjectStatus"
  },
  "Tags": {
   "insertionOrder": false,
   "items": {
    "$ref": "#/definitions/Tag"
   },
   "maxItems": 200,
   "minItems": 0,
   "type": "array"
  }
 },
 "readOnlyProperties": [
  "/properties/CreationTime",
  "/properties/LastModifiedTime",
  "/properties/ProjectArn",
  "/properties/ProjectStage",
  "/properties/Status"
 ],
 "required": [
  "ProjectName"
 ],
 "tagging": {
  "cloudFormationSystemTags": false,
  "tagOnCreate": true,
  "tagProperty": "/properties/Tags",
  "tagUpdatable": true,
  "taggable": true
 },
 "typeName": "AWS::Bedrock::DataAutomationProject"
}
