{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-supportapp-slackchannelconfiguration.json",
  "title": "AWSSupportAppSlackChannelConfigurationProperties",
  "description": "An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations.. Source:- <https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-supportapp.git>",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-supportapp-slackchannelconfiguration.json",
    "sourceSha256": "0b4e73819ac8852d727a2980c4afb3b2b0330376cc6d7eee70b43fd854aed46b"
  },
  "type": "object",
  "properties": {
    "TeamId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^\\S+$",
          "minLength": 1,
          "maxLength": 256
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The team ID in Slack, which uniquely identifies a workspace."
    },
    "ChannelId": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^\\S+$",
          "minLength": 1,
          "maxLength": 256
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The channel ID in Slack, which identifies a channel within a workspace."
    },
    "ChannelName": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^.+$",
          "minLength": 1,
          "maxLength": 256
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The channel name in Slack."
    },
    "NotifyOnCreateOrReopenCase": {
      "description": "Whether to notify when a case is created or reopened.",
      "type": "boolean"
    },
    "NotifyOnAddCorrespondenceToCase": {
      "description": "Whether to notify when a correspondence is added to a case.",
      "type": "boolean"
    },
    "NotifyOnResolveCase": {
      "description": "Whether to notify when a case is resolved.",
      "type": "boolean"
    },
    "NotifyOnCaseSeverity": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "none",
            "all",
            "high"
          ]
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The severity level of a support case that a customer wants to get notified for."
    },
    "ChannelRoleArn": {
      "oneOf": [
        {
          "type": "string",
          "pattern": "^arn:aws[-a-z0-9]*:iam::[0-9]{12}:role\\/(.+)$",
          "minLength": 31,
          "maxLength": 2048
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ],
      "description": "The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services."
    }
  },
  "typeName": "AWS::SupportApp::SlackChannelConfiguration",
  "createOnlyProperties": [
    "/properties/TeamId",
    "/properties/ChannelId"
  ],
  "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-supportapp.git",
  "primaryIdentifier": [
    "/properties/TeamId",
    "/properties/ChannelId"
  ],
  "required": [
    "TeamId",
    "ChannelId",
    "NotifyOnCaseSeverity",
    "ChannelRoleArn"
  ],
  "additionalProperties": false
}
