{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-ses-receiptrule.json",
  "title": "AWSSESReceiptRuleProperties",
  "description": "Resource Type definition for AWS::SES::ReceiptRule. Source:- No source definition found, add manually please",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-ses-receiptrule.json",
    "sourceSha256": "9005aeb8dbc1e9c4ecdcf3f10dfcf57c8c8d3214677ccc8501bd821dc7c5af71"
  },
  "type": "object",
  "properties": {
    "After": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Rule": {
      "$ref": "#/$defs/Rule"
    },
    "RuleSetName": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    }
  },
  "typeName": "AWS::SES::ReceiptRule",
  "readOnlyProperties": [
    "/properties/Id"
  ],
  "$defs": {
    "Rule": {
      "type": "object",
      "title": "AWSSESReceiptRuleRuleDefinition",
      "properties": {
        "ScanEnabled": {
          "type": "boolean"
        },
        "Recipients": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "Actions": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/Action"
          }
        },
        "Enabled": {
          "type": "boolean"
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TlsPolicy": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "Action": {
      "type": "object",
      "title": "AWSSESReceiptRuleActionDefinition",
      "properties": {
        "BounceAction": {
          "$ref": "#/$defs/BounceAction"
        },
        "S3Action": {
          "$ref": "#/$defs/S3Action"
        },
        "StopAction": {
          "$ref": "#/$defs/StopAction"
        },
        "SNSAction": {
          "$ref": "#/$defs/SNSAction"
        },
        "WorkmailAction": {
          "$ref": "#/$defs/WorkmailAction"
        },
        "AddHeaderAction": {
          "$ref": "#/$defs/AddHeaderAction"
        },
        "LambdaAction": {
          "$ref": "#/$defs/LambdaAction"
        }
      },
      "additionalProperties": false
    },
    "SNSAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleSNSActionDefinition",
      "properties": {
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Encoding": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "WorkmailAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleWorkmailActionDefinition",
      "properties": {
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "OrganizationArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "OrganizationArn"
      ],
      "additionalProperties": false
    },
    "StopAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleStopActionDefinition",
      "properties": {
        "Scope": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Scope"
      ],
      "additionalProperties": false
    },
    "AddHeaderAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleAddHeaderActionDefinition",
      "properties": {
        "HeaderValue": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "HeaderName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "HeaderName",
        "HeaderValue"
      ],
      "additionalProperties": false
    },
    "BounceAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleBounceActionDefinition",
      "properties": {
        "Sender": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "SmtpReplyCode": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Message": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "StatusCode": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Sender",
        "SmtpReplyCode",
        "Message"
      ],
      "additionalProperties": false
    },
    "LambdaAction": {
      "type": "object",
      "title": "AWSSESReceiptRuleLambdaActionDefinition",
      "properties": {
        "FunctionArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "InvocationType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "FunctionArn"
      ],
      "additionalProperties": false
    },
    "S3Action": {
      "type": "object",
      "title": "AWSSESReceiptRuleS3ActionDefinition",
      "properties": {
        "BucketName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "KmsKeyArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TopicArn": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ObjectKeyPrefix": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "BucketName"
      ],
      "additionalProperties": false
    }
  },
  "primaryIdentifier": [
    "/properties/Id"
  ],
  "additionalProperties": false,
  "required": [
    "RuleSetName",
    "Rule"
  ],
  "createOnlyProperties": [
    "/properties/RuleSetName"
  ]
}
