{ "version":"2.0", "metadata":{ "apiVersion":"2021-08-20", "endpointPrefix":"supportapp", "jsonVersion":"1.1", "protocol":"rest-json", "serviceAbbreviation":"SupportApp", "serviceFullName":"AWS Support App", "serviceId":"Support App", "signatureVersion":"v4", "signingName":"supportapp", "uid":"support-app-2021-08-20" }, "operations":{ "CreateSlackChannelConfiguration":{ "name":"CreateSlackChannelConfiguration", "http":{ "method":"POST", "requestUri":"/control/create-slack-channel-configuration", "responseCode":200 }, "input":{"shape":"CreateSlackChannelConfigurationRequest"}, "output":{"shape":"CreateSlackChannelConfigurationResult"}, "errors":[ {"shape":"ServiceQuotaExceededException"}, {"shape":"ConflictException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Creates a Slack channel configuration for your Amazon Web Services account.

A Slack channel can have up to 100 Amazon Web Services accounts. This means that only 100 accounts can add the same Slack channel to the Amazon Web Services Support App. We recommend that you only add the accounts that you need to manage support cases for your organization. This can reduce the notifications about case updates that you receive in the Slack channel.

We recommend that you choose a private Slack channel so that only members in that channel have read and write access to your support cases. Anyone in your Slack channel can create, update, or resolve support cases for your account. Users require an invitation to join private channels.

" }, "DeleteAccountAlias":{ "name":"DeleteAccountAlias", "http":{ "method":"POST", "requestUri":"/control/delete-account-alias", "responseCode":200 }, "input":{"shape":"DeleteAccountAliasRequest"}, "output":{"shape":"DeleteAccountAliasResult"}, "errors":[ {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"} ], "documentation":"

Deletes an alias for an Amazon Web Services account ID. The alias appears in the Amazon Web Services Support App page of the Amazon Web Services Support Center. The alias also appears in Slack messages from the Amazon Web Services Support App.

" }, "DeleteSlackChannelConfiguration":{ "name":"DeleteSlackChannelConfiguration", "http":{ "method":"POST", "requestUri":"/control/delete-slack-channel-configuration", "responseCode":200 }, "input":{"shape":"DeleteSlackChannelConfigurationRequest"}, "output":{"shape":"DeleteSlackChannelConfigurationResult"}, "errors":[ {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Deletes a Slack channel configuration from your Amazon Web Services account. This operation doesn't delete your Slack channel.

" }, "DeleteSlackWorkspaceConfiguration":{ "name":"DeleteSlackWorkspaceConfiguration", "http":{ "method":"POST", "requestUri":"/control/delete-slack-workspace-configuration", "responseCode":200 }, "input":{"shape":"DeleteSlackWorkspaceConfigurationRequest"}, "output":{"shape":"DeleteSlackWorkspaceConfigurationResult"}, "errors":[ {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Deletes a Slack workspace configuration from your Amazon Web Services account. This operation doesn't delete your Slack workspace.

" }, "GetAccountAlias":{ "name":"GetAccountAlias", "http":{ "method":"POST", "requestUri":"/control/get-account-alias", "responseCode":200 }, "input":{"shape":"GetAccountAliasRequest"}, "output":{"shape":"GetAccountAliasResult"}, "errors":[ {"shape":"InternalServerException"} ], "documentation":"

Retrieves the alias from an Amazon Web Services account ID. The alias appears in the Amazon Web Services Support App page of the Amazon Web Services Support Center. The alias also appears in Slack messages from the Amazon Web Services Support App.

" }, "ListSlackChannelConfigurations":{ "name":"ListSlackChannelConfigurations", "http":{ "method":"POST", "requestUri":"/control/list-slack-channel-configurations", "responseCode":200 }, "input":{"shape":"ListSlackChannelConfigurationsRequest"}, "output":{"shape":"ListSlackChannelConfigurationsResult"}, "errors":[ {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"} ], "documentation":"

Lists the Slack channel configurations for an Amazon Web Services account.

" }, "ListSlackWorkspaceConfigurations":{ "name":"ListSlackWorkspaceConfigurations", "http":{ "method":"POST", "requestUri":"/control/list-slack-workspace-configurations", "responseCode":200 }, "input":{"shape":"ListSlackWorkspaceConfigurationsRequest"}, "output":{"shape":"ListSlackWorkspaceConfigurationsResult"}, "errors":[ {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"} ], "documentation":"

Lists the Slack workspace configurations for an Amazon Web Services account.

" }, "PutAccountAlias":{ "name":"PutAccountAlias", "http":{ "method":"POST", "requestUri":"/control/put-account-alias", "responseCode":200 }, "input":{"shape":"PutAccountAliasRequest"}, "output":{"shape":"PutAccountAliasResult"}, "errors":[ {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Creates or updates an individual alias for each Amazon Web Services account ID. The alias appears in the Amazon Web Services Support App page of the Amazon Web Services Support Center. The alias also appears in Slack messages from the Amazon Web Services Support App.

" }, "RegisterSlackWorkspaceForOrganization":{ "name":"RegisterSlackWorkspaceForOrganization", "http":{ "method":"POST", "requestUri":"/control/register-slack-workspace-for-organization", "responseCode":200 }, "input":{"shape":"RegisterSlackWorkspaceForOrganizationRequest"}, "output":{"shape":"RegisterSlackWorkspaceForOrganizationResult"}, "errors":[ {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Registers a Slack workspace for your Amazon Web Services account. To call this API, your account must be part of an organization in Organizations.

If you're the management account and you want to register Slack workspaces for your organization, you must complete the following tasks:

  1. Sign in to the Amazon Web Services Support Center and authorize the Slack workspaces where you want your organization to have access to. See Authorize a Slack workspace in the Amazon Web Services Support User Guide.

  2. Call the RegisterSlackWorkspaceForOrganization API to authorize each Slack workspace for the organization.

After the management account authorizes the Slack workspace, member accounts can call this API to authorize the same Slack workspace for their individual accounts. Member accounts don't need to authorize the Slack workspace manually through the Amazon Web Services Support Center.

To use the Amazon Web Services Support App, each account must then complete the following tasks:

" }, "UpdateSlackChannelConfiguration":{ "name":"UpdateSlackChannelConfiguration", "http":{ "method":"POST", "requestUri":"/control/update-slack-channel-configuration", "responseCode":200 }, "input":{"shape":"UpdateSlackChannelConfigurationRequest"}, "output":{"shape":"UpdateSlackChannelConfigurationResult"}, "errors":[ {"shape":"ConflictException"}, {"shape":"ResourceNotFoundException"}, {"shape":"AccessDeniedException"}, {"shape":"InternalServerException"}, {"shape":"ValidationException"} ], "documentation":"

Updates the configuration for a Slack channel, such as case update notifications.

" } }, "shapes":{ "AccessDeniedException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

You don't have sufficient permission to perform this action.

", "error":{ "httpStatusCode":403, "senderFault":true }, "exception":true }, "AccountType":{ "type":"string", "enum":[ "management", "member" ] }, "ConflictException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

Your request has a conflict. For example, you might receive this error if you try the following:

", "error":{ "httpStatusCode":409, "senderFault":true }, "exception":true }, "CreateSlackChannelConfigurationRequest":{ "type":"structure", "required":[ "channelId", "channelRoleArn", "notifyOnCaseSeverity", "teamId" ], "members":{ "channelId":{ "shape":"channelId", "documentation":"

The channel ID in Slack. This ID identifies a channel within a Slack workspace.

" }, "channelName":{ "shape":"channelName", "documentation":"

The name of the Slack channel that you configure for the Amazon Web Services Support App.

" }, "channelRoleArn":{ "shape":"roleArn", "documentation":"

The Amazon Resource Name (ARN) of an IAM role that you want to use to perform operations on Amazon Web Services. For more information, see Managing access to the Amazon Web Services Support App in the Amazon Web Services Support User Guide.

" }, "notifyOnAddCorrespondenceToCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case has a new correspondence.

" }, "notifyOnCaseSeverity":{ "shape":"NotificationSeverityLevel", "documentation":"

The case severity for a support case that you want to receive notifications.

If you specify high or all, you must specify true for at least one of the following parameters:

If you specify none, the following parameters must be null or false:

If you don't specify these parameters in your request, they default to false.

" }, "notifyOnCreateOrReopenCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is created or reopened.

" }, "notifyOnResolveCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is resolved.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } } }, "CreateSlackChannelConfigurationResult":{ "type":"structure", "members":{ } }, "DeleteAccountAliasRequest":{ "type":"structure", "members":{ } }, "DeleteAccountAliasResult":{ "type":"structure", "members":{ } }, "DeleteSlackChannelConfigurationRequest":{ "type":"structure", "required":[ "channelId", "teamId" ], "members":{ "channelId":{ "shape":"channelId", "documentation":"

The channel ID in Slack. This ID identifies a channel within a Slack workspace.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } } }, "DeleteSlackChannelConfigurationResult":{ "type":"structure", "members":{ } }, "DeleteSlackWorkspaceConfigurationRequest":{ "type":"structure", "required":["teamId"], "members":{ "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } } }, "DeleteSlackWorkspaceConfigurationResult":{ "type":"structure", "members":{ } }, "GetAccountAliasRequest":{ "type":"structure", "members":{ } }, "GetAccountAliasResult":{ "type":"structure", "members":{ "accountAlias":{ "shape":"awsAccountAlias", "documentation":"

An alias or short name for an Amazon Web Services account.

" } } }, "InternalServerException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

We can’t process your request right now because of a server issue. Try again later.

", "error":{"httpStatusCode":500}, "exception":true, "fault":true }, "ListSlackChannelConfigurationsRequest":{ "type":"structure", "members":{ "nextToken":{ "shape":"paginationToken", "documentation":"

If the results of a search are large, the API only returns a portion of the results and includes a nextToken pagination token in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When the API returns the last set of results, the response doesn't include a pagination token value.

" } } }, "ListSlackChannelConfigurationsResult":{ "type":"structure", "required":["slackChannelConfigurations"], "members":{ "nextToken":{ "shape":"paginationToken", "documentation":"

The point where pagination should resume when the response returns only partial results.

" }, "slackChannelConfigurations":{ "shape":"slackChannelConfigurationList", "documentation":"

The configurations for a Slack channel.

" } } }, "ListSlackWorkspaceConfigurationsRequest":{ "type":"structure", "members":{ "nextToken":{ "shape":"paginationToken", "documentation":"

If the results of a search are large, the API only returns a portion of the results and includes a nextToken pagination token in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When the API returns the last set of results, the response doesn't include a pagination token value.

" } } }, "ListSlackWorkspaceConfigurationsResult":{ "type":"structure", "members":{ "nextToken":{ "shape":"paginationToken", "documentation":"

The point where pagination should resume when the response returns only partial results.

" }, "slackWorkspaceConfigurations":{ "shape":"SlackWorkspaceConfigurationList", "documentation":"

The configurations for a Slack workspace.

" } } }, "NotificationSeverityLevel":{ "type":"string", "enum":[ "none", "all", "high" ] }, "PutAccountAliasRequest":{ "type":"structure", "required":["accountAlias"], "members":{ "accountAlias":{ "shape":"awsAccountAlias", "documentation":"

An alias or short name for an Amazon Web Services account.

" } } }, "PutAccountAliasResult":{ "type":"structure", "members":{ } }, "RegisterSlackWorkspaceForOrganizationRequest":{ "type":"structure", "required":["teamId"], "members":{ "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG. Specify the Slack workspace that you want to use for your organization.

" } } }, "RegisterSlackWorkspaceForOrganizationResult":{ "type":"structure", "members":{ "accountType":{ "shape":"AccountType", "documentation":"

Whether the Amazon Web Services account is a management or member account that's part of an organization in Organizations.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" }, "teamName":{ "shape":"teamName", "documentation":"

The name of the Slack workspace.

" } } }, "ResourceNotFoundException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

The specified resource is missing or doesn't exist, such as an account alias, Slack channel configuration, or Slack workspace configuration.

", "error":{ "httpStatusCode":404, "senderFault":true }, "exception":true }, "ServiceQuotaExceededException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

Your Service Quotas request exceeds the quota for the service. For example, your Service Quotas request to Amazon Web Services Support App might exceed the maximum number of workspaces or channels per account, or the maximum number of accounts per Slack channel.

", "error":{ "httpStatusCode":402, "senderFault":true }, "exception":true }, "SlackChannelConfiguration":{ "type":"structure", "required":[ "channelId", "teamId" ], "members":{ "channelId":{ "shape":"channelId", "documentation":"

The channel ID in Slack. This ID identifies a channel within a Slack workspace.

" }, "channelName":{ "shape":"channelName", "documentation":"

The name of the Slack channel that you configured with the Amazon Web Services Support App for your Amazon Web Services account.

" }, "channelRoleArn":{ "shape":"roleArn", "documentation":"

The Amazon Resource Name (ARN) of an IAM role that you want to use to perform operations on Amazon Web Services. For more information, see Managing access to the Amazon Web Services Support App in the Amazon Web Services Support User Guide.

" }, "notifyOnAddCorrespondenceToCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case has a new correspondence.

" }, "notifyOnCaseSeverity":{ "shape":"NotificationSeverityLevel", "documentation":"

The case severity for a support case that you want to receive notifications.

" }, "notifyOnCreateOrReopenCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is created or reopened.

" }, "notifyOnResolveCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is resolved.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } }, "documentation":"

The configuration for a Slack channel that you added for your Amazon Web Services account.

" }, "SlackWorkspaceConfiguration":{ "type":"structure", "required":["teamId"], "members":{ "allowOrganizationMemberAccount":{ "shape":"booleanValue", "documentation":"

Whether to allow member accounts to authorize Slack workspaces. Member accounts must be part of an organization in Organizations.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" }, "teamName":{ "shape":"teamName", "documentation":"

The name of the Slack workspace.

" } }, "documentation":"

The configuration for a Slack workspace that you added to an Amazon Web Services account.

" }, "SlackWorkspaceConfigurationList":{ "type":"list", "member":{"shape":"SlackWorkspaceConfiguration"} }, "UpdateSlackChannelConfigurationRequest":{ "type":"structure", "required":[ "channelId", "teamId" ], "members":{ "channelId":{ "shape":"channelId", "documentation":"

The channel ID in Slack. This ID identifies a channel within a Slack workspace.

" }, "channelName":{ "shape":"channelName", "documentation":"

The Slack channel name that you want to update.

" }, "channelRoleArn":{ "shape":"roleArn", "documentation":"

The Amazon Resource Name (ARN) of an IAM role that you want to use to perform operations on Amazon Web Services. For more information, see Managing access to the Amazon Web Services Support App in the Amazon Web Services Support User Guide.

" }, "notifyOnAddCorrespondenceToCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case has a new correspondence.

" }, "notifyOnCaseSeverity":{ "shape":"NotificationSeverityLevel", "documentation":"

The case severity for a support case that you want to receive notifications.

If you specify high or all, at least one of the following parameters must be true:

If you specify none, any of the following parameters that you specify in your request must be false:

If you don't specify these parameters in your request, the Amazon Web Services Support App uses the current values by default.

" }, "notifyOnCreateOrReopenCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is created or reopened.

" }, "notifyOnResolveCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is resolved.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } } }, "UpdateSlackChannelConfigurationResult":{ "type":"structure", "members":{ "channelId":{ "shape":"channelId", "documentation":"

The channel ID in Slack. This ID identifies a channel within a Slack workspace.

" }, "channelName":{ "shape":"channelName", "documentation":"

The name of the Slack channel that you configure for the Amazon Web Services Support App.

" }, "channelRoleArn":{ "shape":"roleArn", "documentation":"

The Amazon Resource Name (ARN) of an IAM role that you want to use to perform operations on Amazon Web Services. For more information, see Managing access to the Amazon Web Services Support App in the Amazon Web Services Support User Guide.

" }, "notifyOnAddCorrespondenceToCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case has a new correspondence.

" }, "notifyOnCaseSeverity":{ "shape":"NotificationSeverityLevel", "documentation":"

The case severity for a support case that you want to receive notifications.

" }, "notifyOnCreateOrReopenCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is created or reopened.

" }, "notifyOnResolveCase":{ "shape":"booleanValue", "documentation":"

Whether you want to get notified when a support case is resolved.

" }, "teamId":{ "shape":"teamId", "documentation":"

The team ID in Slack. This ID uniquely identifies a Slack workspace, such as T012ABCDEFG.

" } } }, "ValidationException":{ "type":"structure", "members":{ "message":{"shape":"errorMessage"} }, "documentation":"

Your request input doesn't meet the constraints that the Amazon Web Services Support App specifies.

", "error":{ "httpStatusCode":400, "senderFault":true }, "exception":true }, "awsAccountAlias":{ "type":"string", "max":30, "min":1, "pattern":"^[\\w\\- ]+$" }, "booleanValue":{ "type":"boolean", "box":true }, "channelId":{ "type":"string", "max":256, "min":1, "pattern":"^\\S+$" }, "channelName":{ "type":"string", "max":256, "min":1, "pattern":"^.+$" }, "errorMessage":{"type":"string"}, "paginationToken":{ "type":"string", "max":256, "min":1, "pattern":"^\\S+$" }, "roleArn":{ "type":"string", "max":2048, "min":31, "pattern":"^arn:aws:iam::[0-9]{12}:role/(.+)$" }, "slackChannelConfigurationList":{ "type":"list", "member":{"shape":"SlackChannelConfiguration"} }, "teamId":{ "type":"string", "max":256, "min":1, "pattern":"^\\S+$" }, "teamName":{ "type":"string", "max":256, "min":1, "pattern":"^.+$" } }, "documentation":"

Amazon Web Services Support App in Slack

You can use the Amazon Web Services Support App in Slack API to manage your support cases in Slack for your Amazon Web Services account. After you configure your Slack workspace and channel with the Amazon Web Services Support App, you can perform the following tasks directly in your Slack channel:

For more information about how to perform these actions in Slack, see the following documentation in the Amazon Web Services Support User Guide:

You can also use the Amazon Web Services Management Console instead of the Amazon Web Services Support App API to manage your Slack configurations. For more information, see Authorize a Slack workspace to enable the Amazon Web Services Support App.

" }