putBotAlias method
Creates an alias for the specified version of the bot or replaces an alias for the specified bot. To change the version of the bot that the alias points to, replace the alias. For more information about aliases, see versioning-aliases.
This operation requires permissions for the lex:PutBotAlias
action.
May throw ConflictException. May throw LimitExceededException. May throw InternalFailureException. May throw BadRequestException. May throw PreconditionFailedException.
Parameter botName :
The name of the bot.
Parameter botVersion :
The version of the bot.
Parameter name :
The name of the alias. The name is not case sensitive.
Parameter checksum :
Identifies a specific revision of the $LATEST version.
When you create a new bot alias, leave the checksum field
blank. If you specify a checksum you get a
BadRequestException exception.
When you want to update a bot alias, set the checksum field
to the checksum of the most recent revision of the $LATEST
version. If you don't specify the checksum field, or if the
checksum does not match the $LATEST version, you get a
PreconditionFailedException exception.
Parameter conversationLogs :
Settings for conversation logs for the alias.
Parameter description :
A description of the alias.
Parameter tags :
A list of tags to add to the bot alias. You can only add tags when you
create an alias, you can't use the PutBotAlias operation to
update the tags on a bot alias. To update tags, use the
TagResource operation.
Implementation
Future<PutBotAliasResponse> putBotAlias({
required String botName,
required String botVersion,
required String name,
String? checksum,
ConversationLogsRequest? conversationLogs,
String? description,
List<Tag>? tags,
}) async {
ArgumentError.checkNotNull(botName, 'botName');
_s.validateStringLength(
'botName',
botName,
2,
50,
isRequired: true,
);
ArgumentError.checkNotNull(botVersion, 'botVersion');
_s.validateStringLength(
'botVersion',
botVersion,
1,
64,
isRequired: true,
);
ArgumentError.checkNotNull(name, 'name');
_s.validateStringLength(
'name',
name,
1,
100,
isRequired: true,
);
_s.validateStringLength(
'description',
description,
0,
200,
);
final $payload = <String, dynamic>{
'botVersion': botVersion,
if (checksum != null) 'checksum': checksum,
if (conversationLogs != null) 'conversationLogs': conversationLogs,
if (description != null) 'description': description,
if (tags != null) 'tags': tags,
};
final response = await _protocol.send(
payload: $payload,
method: 'PUT',
requestUri:
'/bots/${Uri.encodeComponent(botName)}/aliases/${Uri.encodeComponent(name)}',
exceptionFnMap: _exceptionFns,
);
return PutBotAliasResponse.fromJson(response);
}