Class SlackConfiguration
- java.lang.Object
-
- software.amazon.awssdk.services.kendra.model.SlackConfiguration
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<SlackConfiguration.Builder,SlackConfiguration>
@Generated("software.amazon.awssdk:codegen") public final class SlackConfiguration extends Object implements SdkPojo, Serializable, ToCopyableBuilder<SlackConfiguration.Builder,SlackConfiguration>
Provides the configuration information to connect to Slack as your data source.
Amazon Kendra now supports an upgraded Slack connector.
You must now use the TemplateConfiguration object instead of the
SlackConfigurationobject to configure your connector.Connectors configured using the older console and API architecture will continue to function as configured. However, you won’t be able to edit or update them. If you want to edit or update your connector configuration, you must create a new connector.
We recommended migrating your connector workflow to the upgraded version. Support for connectors configured using the older architecture is scheduled to end by June 2024.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceSlackConfiguration.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SlackConfiguration.Builderbuilder()BooleancrawlBotMessage()TRUEto index bot messages from your Slack workspace team.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)BooleanexcludeArchived()TRUEto exclude archived messages to index from your Slack workspace team.List<String>exclusionPatterns()A list of regular expression patterns to exclude certain attached files in your Slack workspace team.List<DataSourceToIndexFieldMapping>fieldMappings()A list ofDataSourceToIndexFieldMappingobjects that map Slack data source attributes or field names to Amazon Kendra index field names.<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasExclusionPatterns()For responses, this returns true if the service returned a value for the ExclusionPatterns property.booleanhasFieldMappings()For responses, this returns true if the service returned a value for the FieldMappings property.inthashCode()booleanhasInclusionPatterns()For responses, this returns true if the service returned a value for the InclusionPatterns property.booleanhasPrivateChannelFilter()For responses, this returns true if the service returned a value for the PrivateChannelFilter property.booleanhasPublicChannelFilter()For responses, this returns true if the service returned a value for the PublicChannelFilter property.booleanhasSlackEntityList()For responses, this returns true if the service returned a value for the SlackEntityList property.List<String>inclusionPatterns()A list of regular expression patterns to include certain attached files in your Slack workspace team.IntegerlookBackPeriod()The number of hours for change log to look back from when you last synchronized your data.List<String>privateChannelFilter()The list of private channel names from your Slack workspace team.List<String>publicChannelFilter()The list of public channel names to index from your Slack workspace team.List<SdkField<?>>sdkFields()StringsecretArn()The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect to your Slack workspace team.static Class<? extends SlackConfiguration.Builder>serializableBuilderClass()StringsinceCrawlDate()The date to start crawling your data from your Slack workspace team.List<SlackEntity>slackEntityList()Specify whether to index public channels, private channels, group messages, and direct messages.List<String>slackEntityListAsStrings()Specify whether to index public channels, private channels, group messages, and direct messages.StringteamId()The identifier of the team in the Slack workspace.SlackConfiguration.BuildertoBuilder()StringtoString()Returns a string representation of this object.BooleanuseChangeLog()TRUEto use the Slack change log to determine which documents require updating in the index.DataSourceVpcConfigurationvpcConfiguration()Configuration information for an Amazon Virtual Private Cloud to connect to your Slack.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
teamId
public final String teamId()
The identifier of the team in the Slack workspace. For example, T0123456789.
You can find your team ID in the URL of the main page of your Slack workspace. When you log in to Slack via a browser, you are directed to the URL of the main page. For example, https://app.slack.com/client/T0123456789/....
- Returns:
- The identifier of the team in the Slack workspace. For example, T0123456789.
You can find your team ID in the URL of the main page of your Slack workspace. When you log in to Slack via a browser, you are directed to the URL of the main page. For example, https://app.slack.com/client/T0123456789/....
-
secretArn
public final String secretArn()
The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect to your Slack workspace team. The secret must contain a JSON structure with the following keys:
-
slackToken—The user or bot token created in Slack. For more information on creating a token in Slack, see Authentication for a Slack data source.
- Returns:
- The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to
connect to your Slack workspace team. The secret must contain a JSON structure with the following
keys:
-
slackToken—The user or bot token created in Slack. For more information on creating a token in Slack, see Authentication for a Slack data source.
-
-
-
vpcConfiguration
public final DataSourceVpcConfiguration vpcConfiguration()
Configuration information for an Amazon Virtual Private Cloud to connect to your Slack. For more information, see Configuring a VPC.
- Returns:
- Configuration information for an Amazon Virtual Private Cloud to connect to your Slack. For more information, see Configuring a VPC.
-
slackEntityList
public final List<SlackEntity> slackEntityList()
Specify whether to index public channels, private channels, group messages, and direct messages. You can specify one or more of these options.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSlackEntityList()method.- Returns:
- Specify whether to index public channels, private channels, group messages, and direct messages. You can specify one or more of these options.
-
hasSlackEntityList
public final boolean hasSlackEntityList()
For responses, this returns true if the service returned a value for the SlackEntityList property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
slackEntityListAsStrings
public final List<String> slackEntityListAsStrings()
Specify whether to index public channels, private channels, group messages, and direct messages. You can specify one or more of these options.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasSlackEntityList()method.- Returns:
- Specify whether to index public channels, private channels, group messages, and direct messages. You can specify one or more of these options.
-
useChangeLog
public final Boolean useChangeLog()
TRUEto use the Slack change log to determine which documents require updating in the index. Depending on the Slack change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in Slack.- Returns:
TRUEto use the Slack change log to determine which documents require updating in the index. Depending on the Slack change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in Slack.
-
crawlBotMessage
public final Boolean crawlBotMessage()
TRUEto index bot messages from your Slack workspace team.- Returns:
TRUEto index bot messages from your Slack workspace team.
-
excludeArchived
public final Boolean excludeArchived()
TRUEto exclude archived messages to index from your Slack workspace team.- Returns:
TRUEto exclude archived messages to index from your Slack workspace team.
-
sinceCrawlDate
public final String sinceCrawlDate()
The date to start crawling your data from your Slack workspace team. The date must follow this format:
yyyy-mm-dd.- Returns:
- The date to start crawling your data from your Slack workspace team. The date must follow this format:
yyyy-mm-dd.
-
lookBackPeriod
public final Integer lookBackPeriod()
The number of hours for change log to look back from when you last synchronized your data. You can look back up to 7 days or 168 hours.
Change log updates your index only if new content was added since you last synced your data. Updated or deleted content from before you last synced does not get updated in your index. To capture updated or deleted content before you last synced, set the
LookBackPeriodto the number of hours you want change log to look back.- Returns:
- The number of hours for change log to look back from when you last synchronized your data. You can look
back up to 7 days or 168 hours.
Change log updates your index only if new content was added since you last synced your data. Updated or deleted content from before you last synced does not get updated in your index. To capture updated or deleted content before you last synced, set the
LookBackPeriodto the number of hours you want change log to look back.
-
hasPrivateChannelFilter
public final boolean hasPrivateChannelFilter()
For responses, this returns true if the service returned a value for the PrivateChannelFilter property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
privateChannelFilter
public final List<String> privateChannelFilter()
The list of private channel names from your Slack workspace team. You use this if you want to index specific private channels, not all private channels. You can also use regular expression patterns to filter private channels.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasPrivateChannelFilter()method.- Returns:
- The list of private channel names from your Slack workspace team. You use this if you want to index specific private channels, not all private channels. You can also use regular expression patterns to filter private channels.
-
hasPublicChannelFilter
public final boolean hasPublicChannelFilter()
For responses, this returns true if the service returned a value for the PublicChannelFilter property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
publicChannelFilter
public final List<String> publicChannelFilter()
The list of public channel names to index from your Slack workspace team. You use this if you want to index specific public channels, not all public channels. You can also use regular expression patterns to filter public channels.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasPublicChannelFilter()method.- Returns:
- The list of public channel names to index from your Slack workspace team. You use this if you want to index specific public channels, not all public channels. You can also use regular expression patterns to filter public channels.
-
hasInclusionPatterns
public final boolean hasInclusionPatterns()
For responses, this returns true if the service returned a value for the InclusionPatterns property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
inclusionPatterns
public final List<String> inclusionPatterns()
A list of regular expression patterns to include certain attached files in your Slack workspace team. Files that match the patterns are included in the index. Files that don't match the patterns are excluded from the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasInclusionPatterns()method.- Returns:
- A list of regular expression patterns to include certain attached files in your Slack workspace team. Files that match the patterns are included in the index. Files that don't match the patterns are excluded from the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
-
hasExclusionPatterns
public final boolean hasExclusionPatterns()
For responses, this returns true if the service returned a value for the ExclusionPatterns property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
exclusionPatterns
public final List<String> exclusionPatterns()
A list of regular expression patterns to exclude certain attached files in your Slack workspace team. Files that match the patterns are excluded from the index. Files that don’t match the patterns are included in the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasExclusionPatterns()method.- Returns:
- A list of regular expression patterns to exclude certain attached files in your Slack workspace team. Files that match the patterns are excluded from the index. Files that don’t match the patterns are included in the index. If a file matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
-
hasFieldMappings
public final boolean hasFieldMappings()
For responses, this returns true if the service returned a value for the FieldMappings property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
fieldMappings
public final List<DataSourceToIndexFieldMapping> fieldMappings()
A list of
DataSourceToIndexFieldMappingobjects that map Slack data source attributes or field names to Amazon Kendra index field names. To create custom fields, use theUpdateIndexAPI before you map to Slack fields. For more information, see Mapping data source fields. The Slack data source field names must exist in your Slack custom metadata.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasFieldMappings()method.- Returns:
- A list of
DataSourceToIndexFieldMappingobjects that map Slack data source attributes or field names to Amazon Kendra index field names. To create custom fields, use theUpdateIndexAPI before you map to Slack fields. For more information, see Mapping data source fields. The Slack data source field names must exist in your Slack custom metadata.
-
toBuilder
public SlackConfiguration.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<SlackConfiguration.Builder,SlackConfiguration>
-
builder
public static SlackConfiguration.Builder builder()
-
serializableBuilderClass
public static Class<? extends SlackConfiguration.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-