We recommend new projects start with resources from the AWS provider.
aws-native.supportapp.SlackChannelConfiguration
Explore with Pulumi AI
We recommend new projects start with resources from the AWS provider.
An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations.
Example Usage
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var awsSupportSlackAppCFNRole = new AwsNative.Iam.Role("awsSupportSlackAppCFNRole", new()
{
AssumeRolePolicyDocument = new Dictionary<string, object?>
{
["version"] = "2012-10-17",
["statement"] = new[]
{
new Dictionary<string, object?>
{
["effect"] = "Allow",
["principal"] = new Dictionary<string, object?>
{
["service"] = new[]
{
"supportapp.amazonaws.com",
},
},
["action"] = new[]
{
"sts:AssumeRole",
},
},
},
},
ManagedPolicyArns = new[]
{
"arn:aws:iam::aws:policy/AWSSupportAppFullAccess",
},
});
var slackChannelConfiguration = new AwsNative.SupportApp.SlackChannelConfiguration("slackChannelConfiguration", new()
{
TeamId = "T012ABCDEFG",
ChannelId = "C01234A5BCD",
ChannelName = "cloudformationtemplatechannel",
NotifyOnCreateOrReopenCase = true,
NotifyOnAddCorrespondenceToCase = false,
NotifyOnResolveCase = true,
NotifyOnCaseSeverity = AwsNative.SupportApp.SlackChannelConfigurationNotifyOnCaseSeverity.High,
ChannelRoleArn = awsSupportSlackAppCFNRole.Arn,
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iam"
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/supportapp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
awsSupportSlackAppCFNRole, err := iam.NewRole(ctx, "awsSupportSlackAppCFNRole", &iam.RoleArgs{
AssumeRolePolicyDocument: pulumi.Any(map[string]interface{}{
"version": "2012-10-17",
"statement": []map[string]interface{}{
map[string]interface{}{
"effect": "Allow",
"principal": map[string]interface{}{
"service": []string{
"supportapp.amazonaws.com",
},
},
"action": []string{
"sts:AssumeRole",
},
},
},
}),
ManagedPolicyArns: pulumi.StringArray{
pulumi.String("arn:aws:iam::aws:policy/AWSSupportAppFullAccess"),
},
})
if err != nil {
return err
}
_, err = supportapp.NewSlackChannelConfiguration(ctx, "slackChannelConfiguration", &supportapp.SlackChannelConfigurationArgs{
TeamId: pulumi.String("T012ABCDEFG"),
ChannelId: pulumi.String("C01234A5BCD"),
ChannelName: pulumi.String("cloudformationtemplatechannel"),
NotifyOnCreateOrReopenCase: pulumi.Bool(true),
NotifyOnAddCorrespondenceToCase: pulumi.Bool(false),
NotifyOnResolveCase: pulumi.Bool(true),
NotifyOnCaseSeverity: supportapp.SlackChannelConfigurationNotifyOnCaseSeverityHigh,
ChannelRoleArn: awsSupportSlackAppCFNRole.Arn,
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
aws_support_slack_app_cfn_role = aws_native.iam.Role("awsSupportSlackAppCFNRole",
assume_role_policy_document={
"version": "2012-10-17",
"statement": [{
"effect": "Allow",
"principal": {
"service": ["supportapp.amazonaws.com"],
},
"action": ["sts:AssumeRole"],
}],
},
managed_policy_arns=["arn:aws:iam::aws:policy/AWSSupportAppFullAccess"])
slack_channel_configuration = aws_native.supportapp.SlackChannelConfiguration("slackChannelConfiguration",
team_id="T012ABCDEFG",
channel_id="C01234A5BCD",
channel_name="cloudformationtemplatechannel",
notify_on_create_or_reopen_case=True,
notify_on_add_correspondence_to_case=False,
notify_on_resolve_case=True,
notify_on_case_severity=aws_native.supportapp.SlackChannelConfigurationNotifyOnCaseSeverity.HIGH,
channel_role_arn=aws_support_slack_app_cfn_role.arn)
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const awsSupportSlackAppCFNRole = new aws_native.iam.Role("awsSupportSlackAppCFNRole", {
assumeRolePolicyDocument: {
version: "2012-10-17",
statement: [{
effect: "Allow",
principal: {
service: ["supportapp.amazonaws.com"],
},
action: ["sts:AssumeRole"],
}],
},
managedPolicyArns: ["arn:aws:iam::aws:policy/AWSSupportAppFullAccess"],
});
const slackChannelConfiguration = new aws_native.supportapp.SlackChannelConfiguration("slackChannelConfiguration", {
teamId: "T012ABCDEFG",
channelId: "C01234A5BCD",
channelName: "cloudformationtemplatechannel",
notifyOnCreateOrReopenCase: true,
notifyOnAddCorrespondenceToCase: false,
notifyOnResolveCase: true,
notifyOnCaseSeverity: aws_native.supportapp.SlackChannelConfigurationNotifyOnCaseSeverity.High,
channelRoleArn: awsSupportSlackAppCFNRole.arn,
});
Coming soon!
Example
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AwsNative = Pulumi.AwsNative;
return await Deployment.RunAsync(() =>
{
var awsSupportSlackAppCFNRole = new AwsNative.Iam.Role("awsSupportSlackAppCFNRole", new()
{
AssumeRolePolicyDocument = new Dictionary<string, object?>
{
["version"] = "2012-10-17",
["statement"] = new[]
{
new Dictionary<string, object?>
{
["effect"] = "Allow",
["principal"] = new Dictionary<string, object?>
{
["service"] = new[]
{
"supportapp.amazonaws.com",
},
},
["action"] = new[]
{
"sts:AssumeRole",
},
},
},
},
ManagedPolicyArns = new[]
{
"arn:aws:iam::aws:policy/AWSSupportAppFullAccess",
},
});
var slackChannelConfiguration = new AwsNative.SupportApp.SlackChannelConfiguration("slackChannelConfiguration", new()
{
TeamId = "T012ABCDEFG",
ChannelId = "C01234A5BCD",
ChannelName = "cfntemplatechannel",
NotifyOnCreateOrReopenCase = true,
NotifyOnAddCorrespondenceToCase = false,
NotifyOnResolveCase = true,
NotifyOnCaseSeverity = AwsNative.SupportApp.SlackChannelConfigurationNotifyOnCaseSeverity.High,
ChannelRoleArn = awsSupportSlackAppCFNRole.Arn,
});
});
package main
import (
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iam"
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/supportapp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
awsSupportSlackAppCFNRole, err := iam.NewRole(ctx, "awsSupportSlackAppCFNRole", &iam.RoleArgs{
AssumeRolePolicyDocument: pulumi.Any(map[string]interface{}{
"version": "2012-10-17",
"statement": []map[string]interface{}{
map[string]interface{}{
"effect": "Allow",
"principal": map[string]interface{}{
"service": []string{
"supportapp.amazonaws.com",
},
},
"action": []string{
"sts:AssumeRole",
},
},
},
}),
ManagedPolicyArns: pulumi.StringArray{
pulumi.String("arn:aws:iam::aws:policy/AWSSupportAppFullAccess"),
},
})
if err != nil {
return err
}
_, err = supportapp.NewSlackChannelConfiguration(ctx, "slackChannelConfiguration", &supportapp.SlackChannelConfigurationArgs{
TeamId: pulumi.String("T012ABCDEFG"),
ChannelId: pulumi.String("C01234A5BCD"),
ChannelName: pulumi.String("cfntemplatechannel"),
NotifyOnCreateOrReopenCase: pulumi.Bool(true),
NotifyOnAddCorrespondenceToCase: pulumi.Bool(false),
NotifyOnResolveCase: pulumi.Bool(true),
NotifyOnCaseSeverity: supportapp.SlackChannelConfigurationNotifyOnCaseSeverityHigh,
ChannelRoleArn: awsSupportSlackAppCFNRole.Arn,
})
if err != nil {
return err
}
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_native as aws_native
aws_support_slack_app_cfn_role = aws_native.iam.Role("awsSupportSlackAppCFNRole",
assume_role_policy_document={
"version": "2012-10-17",
"statement": [{
"effect": "Allow",
"principal": {
"service": ["supportapp.amazonaws.com"],
},
"action": ["sts:AssumeRole"],
}],
},
managed_policy_arns=["arn:aws:iam::aws:policy/AWSSupportAppFullAccess"])
slack_channel_configuration = aws_native.supportapp.SlackChannelConfiguration("slackChannelConfiguration",
team_id="T012ABCDEFG",
channel_id="C01234A5BCD",
channel_name="cfntemplatechannel",
notify_on_create_or_reopen_case=True,
notify_on_add_correspondence_to_case=False,
notify_on_resolve_case=True,
notify_on_case_severity=aws_native.supportapp.SlackChannelConfigurationNotifyOnCaseSeverity.HIGH,
channel_role_arn=aws_support_slack_app_cfn_role.arn)
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";
const awsSupportSlackAppCFNRole = new aws_native.iam.Role("awsSupportSlackAppCFNRole", {
assumeRolePolicyDocument: {
version: "2012-10-17",
statement: [{
effect: "Allow",
principal: {
service: ["supportapp.amazonaws.com"],
},
action: ["sts:AssumeRole"],
}],
},
managedPolicyArns: ["arn:aws:iam::aws:policy/AWSSupportAppFullAccess"],
});
const slackChannelConfiguration = new aws_native.supportapp.SlackChannelConfiguration("slackChannelConfiguration", {
teamId: "T012ABCDEFG",
channelId: "C01234A5BCD",
channelName: "cfntemplatechannel",
notifyOnCreateOrReopenCase: true,
notifyOnAddCorrespondenceToCase: false,
notifyOnResolveCase: true,
notifyOnCaseSeverity: aws_native.supportapp.SlackChannelConfigurationNotifyOnCaseSeverity.High,
channelRoleArn: awsSupportSlackAppCFNRole.arn,
});
Coming soon!
Create SlackChannelConfiguration Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new SlackChannelConfiguration(name: string, args: SlackChannelConfigurationArgs, opts?: CustomResourceOptions);
@overload
def SlackChannelConfiguration(resource_name: str,
args: SlackChannelConfigurationArgs,
opts: Optional[ResourceOptions] = None)
@overload
def SlackChannelConfiguration(resource_name: str,
opts: Optional[ResourceOptions] = None,
channel_id: Optional[str] = None,
channel_role_arn: Optional[str] = None,
notify_on_case_severity: Optional[SlackChannelConfigurationNotifyOnCaseSeverity] = None,
team_id: Optional[str] = None,
channel_name: Optional[str] = None,
notify_on_add_correspondence_to_case: Optional[bool] = None,
notify_on_create_or_reopen_case: Optional[bool] = None,
notify_on_resolve_case: Optional[bool] = None)
func NewSlackChannelConfiguration(ctx *Context, name string, args SlackChannelConfigurationArgs, opts ...ResourceOption) (*SlackChannelConfiguration, error)
public SlackChannelConfiguration(string name, SlackChannelConfigurationArgs args, CustomResourceOptions? opts = null)
public SlackChannelConfiguration(String name, SlackChannelConfigurationArgs args)
public SlackChannelConfiguration(String name, SlackChannelConfigurationArgs args, CustomResourceOptions options)
type: aws-native:supportapp:SlackChannelConfiguration
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args SlackChannelConfigurationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args SlackChannelConfigurationArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args SlackChannelConfigurationArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SlackChannelConfigurationArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args SlackChannelConfigurationArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
SlackChannelConfiguration Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The SlackChannelConfiguration resource accepts the following input properties:
- Channel
Id string - The channel ID in Slack, which identifies a channel within a workspace.
- Channel
Role stringArn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- Notify
On Pulumi.Case Severity Aws Native. Support App. Slack Channel Configuration Notify On Case Severity - The severity level of a support case that a customer wants to get notified for.
- Team
Id string - The team ID in Slack, which uniquely identifies a workspace.
- Channel
Name string - The channel name in Slack.
- Notify
On boolAdd Correspondence To Case - Whether to notify when a correspondence is added to a case.
- Notify
On boolCreate Or Reopen Case - Whether to notify when a case is created or reopened.
- Notify
On boolResolve Case - Whether to notify when a case is resolved.
- Channel
Id string - The channel ID in Slack, which identifies a channel within a workspace.
- Channel
Role stringArn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- Notify
On SlackCase Severity Channel Configuration Notify On Case Severity - The severity level of a support case that a customer wants to get notified for.
- Team
Id string - The team ID in Slack, which uniquely identifies a workspace.
- Channel
Name string - The channel name in Slack.
- Notify
On boolAdd Correspondence To Case - Whether to notify when a correspondence is added to a case.
- Notify
On boolCreate Or Reopen Case - Whether to notify when a case is created or reopened.
- Notify
On boolResolve Case - Whether to notify when a case is resolved.
- channel
Id String - The channel ID in Slack, which identifies a channel within a workspace.
- channel
Role StringArn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- notify
On SlackCase Severity Channel Configuration Notify On Case Severity - The severity level of a support case that a customer wants to get notified for.
- team
Id String - The team ID in Slack, which uniquely identifies a workspace.
- channel
Name String - The channel name in Slack.
- notify
On BooleanAdd Correspondence To Case - Whether to notify when a correspondence is added to a case.
- notify
On BooleanCreate Or Reopen Case - Whether to notify when a case is created or reopened.
- notify
On BooleanResolve Case - Whether to notify when a case is resolved.
- channel
Id string - The channel ID in Slack, which identifies a channel within a workspace.
- channel
Role stringArn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- notify
On SlackCase Severity Channel Configuration Notify On Case Severity - The severity level of a support case that a customer wants to get notified for.
- team
Id string - The team ID in Slack, which uniquely identifies a workspace.
- channel
Name string - The channel name in Slack.
- notify
On booleanAdd Correspondence To Case - Whether to notify when a correspondence is added to a case.
- notify
On booleanCreate Or Reopen Case - Whether to notify when a case is created or reopened.
- notify
On booleanResolve Case - Whether to notify when a case is resolved.
- channel_
id str - The channel ID in Slack, which identifies a channel within a workspace.
- channel_
role_ strarn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- notify_
on_ Slackcase_ severity Channel Configuration Notify On Case Severity - The severity level of a support case that a customer wants to get notified for.
- team_
id str - The team ID in Slack, which uniquely identifies a workspace.
- channel_
name str - The channel name in Slack.
- notify_
on_ booladd_ correspondence_ to_ case - Whether to notify when a correspondence is added to a case.
- notify_
on_ boolcreate_ or_ reopen_ case - Whether to notify when a case is created or reopened.
- notify_
on_ boolresolve_ case - Whether to notify when a case is resolved.
- channel
Id String - The channel ID in Slack, which identifies a channel within a workspace.
- channel
Role StringArn - The Amazon Resource Name (ARN) of an IAM role that grants the AWS Support App access to perform operations for AWS services.
- notify
On "none" | "all" | "high"Case Severity - The severity level of a support case that a customer wants to get notified for.
- team
Id String - The team ID in Slack, which uniquely identifies a workspace.
- channel
Name String - The channel name in Slack.
- notify
On BooleanAdd Correspondence To Case - Whether to notify when a correspondence is added to a case.
- notify
On BooleanCreate Or Reopen Case - Whether to notify when a case is created or reopened.
- notify
On BooleanResolve Case - Whether to notify when a case is resolved.
Outputs
All input properties are implicitly available as output properties. Additionally, the SlackChannelConfiguration resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Supporting Types
SlackChannelConfigurationNotifyOnCaseSeverity, SlackChannelConfigurationNotifyOnCaseSeverityArgs
- None
- none
- All
- all
- High
- high
- Slack
Channel Configuration Notify On Case Severity None - none
- Slack
Channel Configuration Notify On Case Severity All - all
- Slack
Channel Configuration Notify On Case Severity High - high
- None
- none
- All
- all
- High
- high
- None
- none
- All
- all
- High
- high
- NONE
- none
- ALL
- all
- HIGH
- high
- "none"
- none
- "all"
- all
- "high"
- high
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
We recommend new projects start with resources from the AWS provider.