aws-sdk-lexmodelbuildingservice 1.45.0 → 1.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f703de2daf4e447953423f90fe91e227c7415e9f4b5802762c8e4515c399c1c7
4
- data.tar.gz: c861037f77318138dcb4a7313a7bfc6df23a282a7f819aa6fbe2ca2e898e200a
3
+ metadata.gz: 9f5755740c13a91eb367877ffb0a5741309091946f39e64cef6d5c5ca4550563
4
+ data.tar.gz: 4b7d0f522fa7e8c488465f8a622c1b9b9ad315dd347e41167124c5e6c9570428
5
5
  SHA512:
6
- metadata.gz: 5ddf216435a43087876718da41cebddb20104a6bc2425a447f3e66a556ab31edb3392b1515b0cfd1fc4c2181fc7bdca73e430e7ea904721f08da720ebe54802a
7
- data.tar.gz: 456cb972a839a8c7e19e2532bb0c86e06411c5b237e0bc7f45a5bb8690012d7ca475269424e029554739a77092b4adce9d705f121d6326b9d5870e19649b295c
6
+ metadata.gz: af35de5b421ccc392be40b44600874843a0f50d89e7011b6bdc64254e35cbad872fe2ed397e5e0f1865affcd98ffaac55c6cd585d2ccb865a376a5e9cf663375
7
+ data.tar.gz: 72dec499140f91329fb8653d9b784df27e6d331107bc26c3fde8d3792331a97838bac07d5dfbe40bff3371039cc8e9ec456c9a324f764cb07b0fbecefa51e764
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.46.0 (2021-07-13)
5
+ ------------------
6
+
7
+ * Feature - Customers can now migrate bots built with Lex V1 APIs to V2 APIs. This release adds APIs to initiate and manage the migration of a bot.
8
+
4
9
  1.45.0 (2021-04-01)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.45.0
1
+ 1.46.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-lexmodelbuildingservice/customizations'
48
48
  # @!group service
49
49
  module Aws::LexModelBuildingService
50
50
 
51
- GEM_VERSION = '1.45.0'
51
+ GEM_VERSION = '1.46.0'
52
52
 
53
53
  end
@@ -2175,6 +2175,129 @@ module Aws::LexModelBuildingService
2175
2175
  req.send_request(options)
2176
2176
  end
2177
2177
 
2178
+ # Provides details about an ongoing or complete migration from an Amazon
2179
+ # Lex V1 bot to an Amazon Lex V2 bot. Use this operation to view the
2180
+ # migration alerts and warnings related to the migration.
2181
+ #
2182
+ # @option params [required, String] :migration_id
2183
+ # The unique identifier of the migration to view. The `migrationID` is
2184
+ # returned by the operation.
2185
+ #
2186
+ # @return [Types::GetMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2187
+ #
2188
+ # * {Types::GetMigrationResponse#migration_id #migration_id} => String
2189
+ # * {Types::GetMigrationResponse#v1_bot_name #v1_bot_name} => String
2190
+ # * {Types::GetMigrationResponse#v1_bot_version #v1_bot_version} => String
2191
+ # * {Types::GetMigrationResponse#v1_bot_locale #v1_bot_locale} => String
2192
+ # * {Types::GetMigrationResponse#v2_bot_id #v2_bot_id} => String
2193
+ # * {Types::GetMigrationResponse#v2_bot_role #v2_bot_role} => String
2194
+ # * {Types::GetMigrationResponse#migration_status #migration_status} => String
2195
+ # * {Types::GetMigrationResponse#migration_strategy #migration_strategy} => String
2196
+ # * {Types::GetMigrationResponse#migration_timestamp #migration_timestamp} => Time
2197
+ # * {Types::GetMigrationResponse#alerts #alerts} => Array<Types::MigrationAlert>
2198
+ #
2199
+ # @example Request syntax with placeholder values
2200
+ #
2201
+ # resp = client.get_migration({
2202
+ # migration_id: "MigrationId", # required
2203
+ # })
2204
+ #
2205
+ # @example Response structure
2206
+ #
2207
+ # resp.migration_id #=> String
2208
+ # resp.v1_bot_name #=> String
2209
+ # resp.v1_bot_version #=> String
2210
+ # resp.v1_bot_locale #=> String, one of "de-DE", "en-AU", "en-GB", "en-US", "es-419", "es-ES", "es-US", "fr-FR", "fr-CA", "it-IT", "ja-JP"
2211
+ # resp.v2_bot_id #=> String
2212
+ # resp.v2_bot_role #=> String
2213
+ # resp.migration_status #=> String, one of "IN_PROGRESS", "COMPLETED", "FAILED"
2214
+ # resp.migration_strategy #=> String, one of "CREATE_NEW", "UPDATE_EXISTING"
2215
+ # resp.migration_timestamp #=> Time
2216
+ # resp.alerts #=> Array
2217
+ # resp.alerts[0].type #=> String, one of "ERROR", "WARN"
2218
+ # resp.alerts[0].message #=> String
2219
+ # resp.alerts[0].details #=> Array
2220
+ # resp.alerts[0].details[0] #=> String
2221
+ # resp.alerts[0].reference_urls #=> Array
2222
+ # resp.alerts[0].reference_urls[0] #=> String
2223
+ #
2224
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigration AWS API Documentation
2225
+ #
2226
+ # @overload get_migration(params = {})
2227
+ # @param [Hash] params ({})
2228
+ def get_migration(params = {}, options = {})
2229
+ req = build_request(:get_migration, params)
2230
+ req.send_request(options)
2231
+ end
2232
+
2233
+ # Gets a list of migrations between Amazon Lex V1 and Amazon Lex V2.
2234
+ #
2235
+ # @option params [String] :sort_by_attribute
2236
+ # The field to sort the list of migrations by. You can sort by the
2237
+ # Amazon Lex V1 bot name or the date and time that the migration was
2238
+ # started.
2239
+ #
2240
+ # @option params [String] :sort_by_order
2241
+ # The order so sort the list.
2242
+ #
2243
+ # @option params [String] :v1_bot_name_contains
2244
+ # Filters the list to contain only bots whose name contains the
2245
+ # specified string. The string is matched anywhere in bot name.
2246
+ #
2247
+ # @option params [String] :migration_status_equals
2248
+ # Filters the list to contain only migrations in the specified state.
2249
+ #
2250
+ # @option params [Integer] :max_results
2251
+ # The maximum number of migrations to return in the response. The
2252
+ # default is 10.
2253
+ #
2254
+ # @option params [String] :next_token
2255
+ # A pagination token that fetches the next page of migrations. If the
2256
+ # response to this operation is truncated, Amazon Lex returns a
2257
+ # pagination token in the response. To fetch the next page of
2258
+ # migrations, specify the pagination token in the request.
2259
+ #
2260
+ # @return [Types::GetMigrationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2261
+ #
2262
+ # * {Types::GetMigrationsResponse#migration_summaries #migration_summaries} => Array<Types::MigrationSummary>
2263
+ # * {Types::GetMigrationsResponse#next_token #next_token} => String
2264
+ #
2265
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2266
+ #
2267
+ # @example Request syntax with placeholder values
2268
+ #
2269
+ # resp = client.get_migrations({
2270
+ # sort_by_attribute: "V1_BOT_NAME", # accepts V1_BOT_NAME, MIGRATION_DATE_TIME
2271
+ # sort_by_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2272
+ # v1_bot_name_contains: "BotName",
2273
+ # migration_status_equals: "IN_PROGRESS", # accepts IN_PROGRESS, COMPLETED, FAILED
2274
+ # max_results: 1,
2275
+ # next_token: "NextToken",
2276
+ # })
2277
+ #
2278
+ # @example Response structure
2279
+ #
2280
+ # resp.migration_summaries #=> Array
2281
+ # resp.migration_summaries[0].migration_id #=> String
2282
+ # resp.migration_summaries[0].v1_bot_name #=> String
2283
+ # resp.migration_summaries[0].v1_bot_version #=> String
2284
+ # resp.migration_summaries[0].v1_bot_locale #=> String, one of "de-DE", "en-AU", "en-GB", "en-US", "es-419", "es-ES", "es-US", "fr-FR", "fr-CA", "it-IT", "ja-JP"
2285
+ # resp.migration_summaries[0].v2_bot_id #=> String
2286
+ # resp.migration_summaries[0].v2_bot_role #=> String
2287
+ # resp.migration_summaries[0].migration_status #=> String, one of "IN_PROGRESS", "COMPLETED", "FAILED"
2288
+ # resp.migration_summaries[0].migration_strategy #=> String, one of "CREATE_NEW", "UPDATE_EXISTING"
2289
+ # resp.migration_summaries[0].migration_timestamp #=> Time
2290
+ # resp.next_token #=> String
2291
+ #
2292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrations AWS API Documentation
2293
+ #
2294
+ # @overload get_migrations(params = {})
2295
+ # @param [Hash] params ({})
2296
+ def get_migrations(params = {}, options = {})
2297
+ req = build_request(:get_migrations, params)
2298
+ req.send_request(options)
2299
+ end
2300
+
2178
2301
  # Returns information about a specific version of a slot type. In
2179
2302
  # addition to specifying the slot type name, you must specify the slot
2180
2303
  # type version.
@@ -2440,9 +2563,10 @@ module Aws::LexModelBuildingService
2440
2563
  # contains information about a maximum of 100 utterances for each
2441
2564
  # version.
2442
2565
  #
2443
- # If you set `childDirected` field to true when you created your bot, or
2444
- # if you opted out of participating in improving Amazon Lex, utterances
2445
- # are not available.
2566
+ # If you set `childDirected` field to true when you created your bot, if
2567
+ # you are using slot obfuscation with one or more slots, or if you opted
2568
+ # out of participating in improving Amazon Lex, utterances are not
2569
+ # available.
2446
2570
  #
2447
2571
  # This operation requires permissions for the `lex:GetUtterancesView`
2448
2572
  # action.
@@ -4086,6 +4210,90 @@ module Aws::LexModelBuildingService
4086
4210
  req.send_request(options)
4087
4211
  end
4088
4212
 
4213
+ # Starts migrating a bot from Amazon Lex V1 to Amazon Lex V2. Migrate
4214
+ # your bot when you want to take advantage of the new features of Amazon
4215
+ # Lex V2.
4216
+ #
4217
+ # For more information, see [Migrating a bot][1] in the *Amazon Lex
4218
+ # developer guide*.
4219
+ #
4220
+ #
4221
+ #
4222
+ # [1]: https://docs.aws.amazon.com/lex/latest/dg/migrate.html
4223
+ #
4224
+ # @option params [required, String] :v1_bot_name
4225
+ # The name of the Amazon Lex V1 bot that you are migrating to Amazon Lex
4226
+ # V2.
4227
+ #
4228
+ # @option params [required, String] :v1_bot_version
4229
+ # The version of the bot to migrate to Amazon Lex V2. You can migrate
4230
+ # the `$LATEST` version as well as any numbered version.
4231
+ #
4232
+ # @option params [required, String] :v2_bot_name
4233
+ # The name of the Amazon Lex V2 bot that you are migrating the Amazon
4234
+ # Lex V1 bot to.
4235
+ #
4236
+ # * If the Amazon Lex V2 bot doesn't exist, you must use the
4237
+ # `CREATE_NEW` migration strategy.
4238
+ #
4239
+ # * If the Amazon Lex V2 bot exists, you must use the `UPDATE_EXISTING`
4240
+ # migration strategy to change the contents of the Amazon Lex V2 bot.
4241
+ #
4242
+ # @option params [required, String] :v2_bot_role
4243
+ # The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.
4244
+ #
4245
+ # @option params [required, String] :migration_strategy
4246
+ # The strategy used to conduct the migration.
4247
+ #
4248
+ # * `CREATE_NEW` - Creates a new Amazon Lex V2 bot and migrates the
4249
+ # Amazon Lex V1 bot to the new bot.
4250
+ #
4251
+ # * `UPDATE_EXISTING` - Overwrites the existing Amazon Lex V2 bot
4252
+ # metadata and the locale being migrated. It doesn't change any other
4253
+ # locales in the Amazon Lex V2 bot. If the locale doesn't exist, a
4254
+ # new locale is created in the Amazon Lex V2 bot.
4255
+ #
4256
+ # @return [Types::StartMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4257
+ #
4258
+ # * {Types::StartMigrationResponse#v1_bot_name #v1_bot_name} => String
4259
+ # * {Types::StartMigrationResponse#v1_bot_version #v1_bot_version} => String
4260
+ # * {Types::StartMigrationResponse#v1_bot_locale #v1_bot_locale} => String
4261
+ # * {Types::StartMigrationResponse#v2_bot_id #v2_bot_id} => String
4262
+ # * {Types::StartMigrationResponse#v2_bot_role #v2_bot_role} => String
4263
+ # * {Types::StartMigrationResponse#migration_id #migration_id} => String
4264
+ # * {Types::StartMigrationResponse#migration_strategy #migration_strategy} => String
4265
+ # * {Types::StartMigrationResponse#migration_timestamp #migration_timestamp} => Time
4266
+ #
4267
+ # @example Request syntax with placeholder values
4268
+ #
4269
+ # resp = client.start_migration({
4270
+ # v1_bot_name: "BotName", # required
4271
+ # v1_bot_version: "Version", # required
4272
+ # v2_bot_name: "V2BotName", # required
4273
+ # v2_bot_role: "IamRoleArn", # required
4274
+ # migration_strategy: "CREATE_NEW", # required, accepts CREATE_NEW, UPDATE_EXISTING
4275
+ # })
4276
+ #
4277
+ # @example Response structure
4278
+ #
4279
+ # resp.v1_bot_name #=> String
4280
+ # resp.v1_bot_version #=> String
4281
+ # resp.v1_bot_locale #=> String, one of "de-DE", "en-AU", "en-GB", "en-US", "es-419", "es-ES", "es-US", "fr-FR", "fr-CA", "it-IT", "ja-JP"
4282
+ # resp.v2_bot_id #=> String
4283
+ # resp.v2_bot_role #=> String
4284
+ # resp.migration_id #=> String
4285
+ # resp.migration_strategy #=> String, one of "CREATE_NEW", "UPDATE_EXISTING"
4286
+ # resp.migration_timestamp #=> Time
4287
+ #
4288
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigration AWS API Documentation
4289
+ #
4290
+ # @overload start_migration(params = {})
4291
+ # @param [Hash] params ({})
4292
+ def start_migration(params = {}, options = {})
4293
+ req = build_request(:start_migration, params)
4294
+ req.send_request(options)
4295
+ end
4296
+
4089
4297
  # Adds the specified tags to the specified resource. If a tag key
4090
4298
  # already exists, the existing value is replaced with the new value.
4091
4299
  #
@@ -4161,7 +4369,7 @@ module Aws::LexModelBuildingService
4161
4369
  params: params,
4162
4370
  config: config)
4163
4371
  context[:gem_name] = 'aws-sdk-lexmodelbuildingservice'
4164
- context[:gem_version] = '1.45.0'
4372
+ context[:gem_version] = '1.46.0'
4165
4373
  Seahorse::Client::Request.new(handlers, context)
4166
4374
  end
4167
4375
 
@@ -13,6 +13,7 @@ module Aws::LexModelBuildingService
13
13
 
14
14
  include Seahorse::Model
15
15
 
16
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
16
17
  AliasName = Shapes::StringShape.new(name: 'AliasName')
17
18
  AliasNameOrListAll = Shapes::StringShape.new(name: 'AliasNameOrListAll')
18
19
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
@@ -104,6 +105,10 @@ module Aws::LexModelBuildingService
104
105
  GetIntentVersionsResponse = Shapes::StructureShape.new(name: 'GetIntentVersionsResponse')
105
106
  GetIntentsRequest = Shapes::StructureShape.new(name: 'GetIntentsRequest')
106
107
  GetIntentsResponse = Shapes::StructureShape.new(name: 'GetIntentsResponse')
108
+ GetMigrationRequest = Shapes::StructureShape.new(name: 'GetMigrationRequest')
109
+ GetMigrationResponse = Shapes::StructureShape.new(name: 'GetMigrationResponse')
110
+ GetMigrationsRequest = Shapes::StructureShape.new(name: 'GetMigrationsRequest')
111
+ GetMigrationsResponse = Shapes::StructureShape.new(name: 'GetMigrationsResponse')
107
112
  GetSlotTypeRequest = Shapes::StructureShape.new(name: 'GetSlotTypeRequest')
108
113
  GetSlotTypeResponse = Shapes::StructureShape.new(name: 'GetSlotTypeResponse')
109
114
  GetSlotTypeVersionsRequest = Shapes::StructureShape.new(name: 'GetSlotTypeVersionsRequest')
@@ -146,6 +151,20 @@ module Aws::LexModelBuildingService
146
151
  Message = Shapes::StructureShape.new(name: 'Message')
147
152
  MessageList = Shapes::ListShape.new(name: 'MessageList')
148
153
  MessageVersion = Shapes::StringShape.new(name: 'MessageVersion')
154
+ MigrationAlert = Shapes::StructureShape.new(name: 'MigrationAlert')
155
+ MigrationAlertDetail = Shapes::StringShape.new(name: 'MigrationAlertDetail')
156
+ MigrationAlertDetails = Shapes::ListShape.new(name: 'MigrationAlertDetails')
157
+ MigrationAlertMessage = Shapes::StringShape.new(name: 'MigrationAlertMessage')
158
+ MigrationAlertReferenceURL = Shapes::StringShape.new(name: 'MigrationAlertReferenceURL')
159
+ MigrationAlertReferenceURLs = Shapes::ListShape.new(name: 'MigrationAlertReferenceURLs')
160
+ MigrationAlertType = Shapes::StringShape.new(name: 'MigrationAlertType')
161
+ MigrationAlerts = Shapes::ListShape.new(name: 'MigrationAlerts')
162
+ MigrationId = Shapes::StringShape.new(name: 'MigrationId')
163
+ MigrationSortAttribute = Shapes::StringShape.new(name: 'MigrationSortAttribute')
164
+ MigrationStatus = Shapes::StringShape.new(name: 'MigrationStatus')
165
+ MigrationStrategy = Shapes::StringShape.new(name: 'MigrationStrategy')
166
+ MigrationSummary = Shapes::StructureShape.new(name: 'MigrationSummary')
167
+ MigrationSummaryList = Shapes::ListShape.new(name: 'MigrationSummaryList')
149
168
  Name = Shapes::StringShape.new(name: 'Name')
150
169
  NextToken = Shapes::StringShape.new(name: 'NextToken')
151
170
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
@@ -193,8 +212,11 @@ module Aws::LexModelBuildingService
193
212
  SlotTypeRegexConfiguration = Shapes::StructureShape.new(name: 'SlotTypeRegexConfiguration')
194
213
  SlotUtteranceList = Shapes::ListShape.new(name: 'SlotUtteranceList')
195
214
  SlotValueSelectionStrategy = Shapes::StringShape.new(name: 'SlotValueSelectionStrategy')
215
+ SortOrder = Shapes::StringShape.new(name: 'SortOrder')
196
216
  StartImportRequest = Shapes::StructureShape.new(name: 'StartImportRequest')
197
217
  StartImportResponse = Shapes::StructureShape.new(name: 'StartImportResponse')
218
+ StartMigrationRequest = Shapes::StructureShape.new(name: 'StartMigrationRequest')
219
+ StartMigrationResponse = Shapes::StructureShape.new(name: 'StartMigrationResponse')
198
220
  Statement = Shapes::StructureShape.new(name: 'Statement')
199
221
  Status = Shapes::StringShape.new(name: 'Status')
200
222
  StatusType = Shapes::StringShape.new(name: 'StatusType')
@@ -216,10 +238,15 @@ module Aws::LexModelBuildingService
216
238
  UtteranceData = Shapes::StructureShape.new(name: 'UtteranceData')
217
239
  UtteranceList = Shapes::StructureShape.new(name: 'UtteranceList')
218
240
  UtteranceString = Shapes::StringShape.new(name: 'UtteranceString')
241
+ V2BotId = Shapes::StringShape.new(name: 'V2BotId')
242
+ V2BotName = Shapes::StringShape.new(name: 'V2BotName')
219
243
  Value = Shapes::StringShape.new(name: 'Value')
220
244
  Version = Shapes::StringShape.new(name: 'Version')
221
245
  roleArn = Shapes::StringShape.new(name: 'roleArn')
222
246
 
247
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
248
+ AccessDeniedException.struct_class = Types::AccessDeniedException
249
+
223
250
  BadRequestException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
224
251
  BadRequestException.struct_class = Types::BadRequestException
225
252
 
@@ -596,6 +623,33 @@ module Aws::LexModelBuildingService
596
623
  GetIntentsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
597
624
  GetIntentsResponse.struct_class = Types::GetIntentsResponse
598
625
 
626
+ GetMigrationRequest.add_member(:migration_id, Shapes::ShapeRef.new(shape: MigrationId, required: true, location: "uri", location_name: "migrationId"))
627
+ GetMigrationRequest.struct_class = Types::GetMigrationRequest
628
+
629
+ GetMigrationResponse.add_member(:migration_id, Shapes::ShapeRef.new(shape: MigrationId, location_name: "migrationId"))
630
+ GetMigrationResponse.add_member(:v1_bot_name, Shapes::ShapeRef.new(shape: BotName, location_name: "v1BotName"))
631
+ GetMigrationResponse.add_member(:v1_bot_version, Shapes::ShapeRef.new(shape: Version, location_name: "v1BotVersion"))
632
+ GetMigrationResponse.add_member(:v1_bot_locale, Shapes::ShapeRef.new(shape: Locale, location_name: "v1BotLocale"))
633
+ GetMigrationResponse.add_member(:v2_bot_id, Shapes::ShapeRef.new(shape: V2BotId, location_name: "v2BotId"))
634
+ GetMigrationResponse.add_member(:v2_bot_role, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "v2BotRole"))
635
+ GetMigrationResponse.add_member(:migration_status, Shapes::ShapeRef.new(shape: MigrationStatus, location_name: "migrationStatus"))
636
+ GetMigrationResponse.add_member(:migration_strategy, Shapes::ShapeRef.new(shape: MigrationStrategy, location_name: "migrationStrategy"))
637
+ GetMigrationResponse.add_member(:migration_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "migrationTimestamp"))
638
+ GetMigrationResponse.add_member(:alerts, Shapes::ShapeRef.new(shape: MigrationAlerts, location_name: "alerts"))
639
+ GetMigrationResponse.struct_class = Types::GetMigrationResponse
640
+
641
+ GetMigrationsRequest.add_member(:sort_by_attribute, Shapes::ShapeRef.new(shape: MigrationSortAttribute, location: "querystring", location_name: "sortByAttribute"))
642
+ GetMigrationsRequest.add_member(:sort_by_order, Shapes::ShapeRef.new(shape: SortOrder, location: "querystring", location_name: "sortByOrder"))
643
+ GetMigrationsRequest.add_member(:v1_bot_name_contains, Shapes::ShapeRef.new(shape: BotName, location: "querystring", location_name: "v1BotNameContains"))
644
+ GetMigrationsRequest.add_member(:migration_status_equals, Shapes::ShapeRef.new(shape: MigrationStatus, location: "querystring", location_name: "migrationStatusEquals"))
645
+ GetMigrationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
646
+ GetMigrationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
647
+ GetMigrationsRequest.struct_class = Types::GetMigrationsRequest
648
+
649
+ GetMigrationsResponse.add_member(:migration_summaries, Shapes::ShapeRef.new(shape: MigrationSummaryList, location_name: "migrationSummaries"))
650
+ GetMigrationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
651
+ GetMigrationsResponse.struct_class = Types::GetMigrationsResponse
652
+
599
653
  GetSlotTypeRequest.add_member(:name, Shapes::ShapeRef.new(shape: SlotTypeName, required: true, location: "uri", location_name: "name"))
600
654
  GetSlotTypeRequest.add_member(:version, Shapes::ShapeRef.new(shape: Version, required: true, location: "uri", location_name: "version"))
601
655
  GetSlotTypeRequest.struct_class = Types::GetSlotTypeRequest
@@ -709,6 +763,31 @@ module Aws::LexModelBuildingService
709
763
 
710
764
  MessageList.member = Shapes::ShapeRef.new(shape: Message)
711
765
 
766
+ MigrationAlert.add_member(:type, Shapes::ShapeRef.new(shape: MigrationAlertType, location_name: "type"))
767
+ MigrationAlert.add_member(:message, Shapes::ShapeRef.new(shape: MigrationAlertMessage, location_name: "message"))
768
+ MigrationAlert.add_member(:details, Shapes::ShapeRef.new(shape: MigrationAlertDetails, location_name: "details"))
769
+ MigrationAlert.add_member(:reference_urls, Shapes::ShapeRef.new(shape: MigrationAlertReferenceURLs, location_name: "referenceURLs"))
770
+ MigrationAlert.struct_class = Types::MigrationAlert
771
+
772
+ MigrationAlertDetails.member = Shapes::ShapeRef.new(shape: MigrationAlertDetail)
773
+
774
+ MigrationAlertReferenceURLs.member = Shapes::ShapeRef.new(shape: MigrationAlertReferenceURL)
775
+
776
+ MigrationAlerts.member = Shapes::ShapeRef.new(shape: MigrationAlert)
777
+
778
+ MigrationSummary.add_member(:migration_id, Shapes::ShapeRef.new(shape: MigrationId, location_name: "migrationId"))
779
+ MigrationSummary.add_member(:v1_bot_name, Shapes::ShapeRef.new(shape: BotName, location_name: "v1BotName"))
780
+ MigrationSummary.add_member(:v1_bot_version, Shapes::ShapeRef.new(shape: Version, location_name: "v1BotVersion"))
781
+ MigrationSummary.add_member(:v1_bot_locale, Shapes::ShapeRef.new(shape: Locale, location_name: "v1BotLocale"))
782
+ MigrationSummary.add_member(:v2_bot_id, Shapes::ShapeRef.new(shape: V2BotId, location_name: "v2BotId"))
783
+ MigrationSummary.add_member(:v2_bot_role, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "v2BotRole"))
784
+ MigrationSummary.add_member(:migration_status, Shapes::ShapeRef.new(shape: MigrationStatus, location_name: "migrationStatus"))
785
+ MigrationSummary.add_member(:migration_strategy, Shapes::ShapeRef.new(shape: MigrationStrategy, location_name: "migrationStrategy"))
786
+ MigrationSummary.add_member(:migration_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "migrationTimestamp"))
787
+ MigrationSummary.struct_class = Types::MigrationSummary
788
+
789
+ MigrationSummaryList.member = Shapes::ShapeRef.new(shape: MigrationSummary)
790
+
712
791
  NotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
713
792
  NotFoundException.struct_class = Types::NotFoundException
714
793
 
@@ -914,6 +993,23 @@ module Aws::LexModelBuildingService
914
993
  StartImportResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdDate"))
915
994
  StartImportResponse.struct_class = Types::StartImportResponse
916
995
 
996
+ StartMigrationRequest.add_member(:v1_bot_name, Shapes::ShapeRef.new(shape: BotName, required: true, location_name: "v1BotName"))
997
+ StartMigrationRequest.add_member(:v1_bot_version, Shapes::ShapeRef.new(shape: Version, required: true, location_name: "v1BotVersion"))
998
+ StartMigrationRequest.add_member(:v2_bot_name, Shapes::ShapeRef.new(shape: V2BotName, required: true, location_name: "v2BotName"))
999
+ StartMigrationRequest.add_member(:v2_bot_role, Shapes::ShapeRef.new(shape: IamRoleArn, required: true, location_name: "v2BotRole"))
1000
+ StartMigrationRequest.add_member(:migration_strategy, Shapes::ShapeRef.new(shape: MigrationStrategy, required: true, location_name: "migrationStrategy"))
1001
+ StartMigrationRequest.struct_class = Types::StartMigrationRequest
1002
+
1003
+ StartMigrationResponse.add_member(:v1_bot_name, Shapes::ShapeRef.new(shape: BotName, location_name: "v1BotName"))
1004
+ StartMigrationResponse.add_member(:v1_bot_version, Shapes::ShapeRef.new(shape: Version, location_name: "v1BotVersion"))
1005
+ StartMigrationResponse.add_member(:v1_bot_locale, Shapes::ShapeRef.new(shape: Locale, location_name: "v1BotLocale"))
1006
+ StartMigrationResponse.add_member(:v2_bot_id, Shapes::ShapeRef.new(shape: V2BotId, location_name: "v2BotId"))
1007
+ StartMigrationResponse.add_member(:v2_bot_role, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "v2BotRole"))
1008
+ StartMigrationResponse.add_member(:migration_id, Shapes::ShapeRef.new(shape: MigrationId, location_name: "migrationId"))
1009
+ StartMigrationResponse.add_member(:migration_strategy, Shapes::ShapeRef.new(shape: MigrationStrategy, location_name: "migrationStrategy"))
1010
+ StartMigrationResponse.add_member(:migration_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "migrationTimestamp"))
1011
+ StartMigrationResponse.struct_class = Types::StartMigrationResponse
1012
+
917
1013
  Statement.add_member(:messages, Shapes::ShapeRef.new(shape: MessageList, required: true, location_name: "messages"))
918
1014
  Statement.add_member(:response_card, Shapes::ShapeRef.new(shape: ResponseCard, location_name: "responseCard"))
919
1015
  Statement.struct_class = Types::Statement
@@ -1360,6 +1456,35 @@ module Aws::LexModelBuildingService
1360
1456
  )
1361
1457
  end)
1362
1458
 
1459
+ api.add_operation(:get_migration, Seahorse::Model::Operation.new.tap do |o|
1460
+ o.name = "GetMigration"
1461
+ o.http_method = "GET"
1462
+ o.http_request_uri = "/migrations/{migrationId}"
1463
+ o.input = Shapes::ShapeRef.new(shape: GetMigrationRequest)
1464
+ o.output = Shapes::ShapeRef.new(shape: GetMigrationResponse)
1465
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1466
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1467
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1468
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1469
+ end)
1470
+
1471
+ api.add_operation(:get_migrations, Seahorse::Model::Operation.new.tap do |o|
1472
+ o.name = "GetMigrations"
1473
+ o.http_method = "GET"
1474
+ o.http_request_uri = "/migrations"
1475
+ o.input = Shapes::ShapeRef.new(shape: GetMigrationsRequest)
1476
+ o.output = Shapes::ShapeRef.new(shape: GetMigrationsResponse)
1477
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1478
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1479
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1480
+ o[:pager] = Aws::Pager.new(
1481
+ limit_key: "max_results",
1482
+ tokens: {
1483
+ "next_token" => "next_token"
1484
+ }
1485
+ )
1486
+ end)
1487
+
1363
1488
  api.add_operation(:get_slot_type, Seahorse::Model::Operation.new.tap do |o|
1364
1489
  o.name = "GetSlotType"
1365
1490
  o.http_method = "GET"
@@ -1494,6 +1619,19 @@ module Aws::LexModelBuildingService
1494
1619
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1495
1620
  end)
1496
1621
 
1622
+ api.add_operation(:start_migration, Seahorse::Model::Operation.new.tap do |o|
1623
+ o.name = "StartMigration"
1624
+ o.http_method = "POST"
1625
+ o.http_request_uri = "/migrations"
1626
+ o.input = Shapes::ShapeRef.new(shape: StartMigrationRequest)
1627
+ o.output = Shapes::ShapeRef.new(shape: StartMigrationResponse)
1628
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1629
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1630
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1631
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1632
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1633
+ end)
1634
+
1497
1635
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1498
1636
  o.name = "TagResource"
1499
1637
  o.http_method = "POST"
@@ -27,6 +27,7 @@ module Aws::LexModelBuildingService
27
27
  # See {Seahorse::Client::RequestContext} for more information.
28
28
  #
29
29
  # ## Error Classes
30
+ # * {AccessDeniedException}
30
31
  # * {BadRequestException}
31
32
  # * {ConflictException}
32
33
  # * {InternalFailureException}
@@ -41,6 +42,21 @@ module Aws::LexModelBuildingService
41
42
 
42
43
  extend Aws::Errors::DynamicErrors
43
44
 
45
+ class AccessDeniedException < ServiceError
46
+
47
+ # @param [Seahorse::Client::RequestContext] context
48
+ # @param [String] message
49
+ # @param [Aws::LexModelBuildingService::Types::AccessDeniedException] data
50
+ def initialize(context, message, data = Aws::EmptyStructure.new)
51
+ super(context, message, data)
52
+ end
53
+
54
+ # @return [String]
55
+ def message
56
+ @message || @data[:message]
57
+ end
58
+ end
59
+
44
60
  class BadRequestException < ServiceError
45
61
 
46
62
  # @param [Seahorse::Client::RequestContext] context
@@ -10,6 +10,20 @@
10
10
  module Aws::LexModelBuildingService
11
11
  module Types
12
12
 
13
+ # Your IAM user or role does not have permission to call the Amazon Lex
14
+ # V2 APIs required to migrate your bot.
15
+ #
16
+ # @!attribute [rw] message
17
+ # @return [String]
18
+ #
19
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/AccessDeniedException AWS API Documentation
20
+ #
21
+ class AccessDeniedException < Struct.new(
22
+ :message)
23
+ SENSITIVE = []
24
+ include Aws::Structure
25
+ end
26
+
13
27
  # The request is not well formed. For example, a value is invalid or a
14
28
  # required field is missing. Check the field values, and try again.
15
29
  #
@@ -2311,6 +2325,183 @@ module Aws::LexModelBuildingService
2311
2325
  include Aws::Structure
2312
2326
  end
2313
2327
 
2328
+ # @note When making an API call, you may pass GetMigrationRequest
2329
+ # data as a hash:
2330
+ #
2331
+ # {
2332
+ # migration_id: "MigrationId", # required
2333
+ # }
2334
+ #
2335
+ # @!attribute [rw] migration_id
2336
+ # The unique identifier of the migration to view. The `migrationID` is
2337
+ # returned by the operation.
2338
+ # @return [String]
2339
+ #
2340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrationRequest AWS API Documentation
2341
+ #
2342
+ class GetMigrationRequest < Struct.new(
2343
+ :migration_id)
2344
+ SENSITIVE = []
2345
+ include Aws::Structure
2346
+ end
2347
+
2348
+ # @!attribute [rw] migration_id
2349
+ # The unique identifier of the migration. This is the same as the
2350
+ # identifier used when calling the `GetMigration` operation.
2351
+ # @return [String]
2352
+ #
2353
+ # @!attribute [rw] v1_bot_name
2354
+ # The name of the Amazon Lex V1 bot migrated to Amazon Lex V2.
2355
+ # @return [String]
2356
+ #
2357
+ # @!attribute [rw] v1_bot_version
2358
+ # The version of the Amazon Lex V1 bot migrated to Amazon Lex V2.
2359
+ # @return [String]
2360
+ #
2361
+ # @!attribute [rw] v1_bot_locale
2362
+ # The locale of the Amazon Lex V1 bot migrated to Amazon Lex V2.
2363
+ # @return [String]
2364
+ #
2365
+ # @!attribute [rw] v2_bot_id
2366
+ # The unique identifier of the Amazon Lex V2 bot that the Amazon Lex
2367
+ # V1 is being migrated to.
2368
+ # @return [String]
2369
+ #
2370
+ # @!attribute [rw] v2_bot_role
2371
+ # The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.
2372
+ # @return [String]
2373
+ #
2374
+ # @!attribute [rw] migration_status
2375
+ # Indicates the status of the migration. When the status is `COMPLETE`
2376
+ # the migration is finished and the bot is available in Amazon Lex V2.
2377
+ # There may be alerts and warnings that need to be resolved to
2378
+ # complete the migration.
2379
+ # @return [String]
2380
+ #
2381
+ # @!attribute [rw] migration_strategy
2382
+ # The strategy used to conduct the migration.
2383
+ #
2384
+ # * `CREATE_NEW` - Creates a new Amazon Lex V2 bot and migrates the
2385
+ # Amazon Lex V1 bot to the new bot.
2386
+ #
2387
+ # * `UPDATE_EXISTING` - Overwrites the existing Amazon Lex V2 bot
2388
+ # metadata and the locale being migrated. It doesn't change any
2389
+ # other locales in the Amazon Lex V2 bot. If the locale doesn't
2390
+ # exist, a new locale is created in the Amazon Lex V2 bot.
2391
+ # @return [String]
2392
+ #
2393
+ # @!attribute [rw] migration_timestamp
2394
+ # The date and time that the migration started.
2395
+ # @return [Time]
2396
+ #
2397
+ # @!attribute [rw] alerts
2398
+ # A list of alerts and warnings that indicate issues with the
2399
+ # migration for the Amazon Lex V1 bot to Amazon Lex V2. You receive a
2400
+ # warning when an Amazon Lex V1 feature has a different implementation
2401
+ # if Amazon Lex V2.
2402
+ #
2403
+ # For more information, see [Migrating a bot][1] in the *Amazon Lex V2
2404
+ # developer guide*.
2405
+ #
2406
+ #
2407
+ #
2408
+ # [1]: https://docs.aws.amazon.com/lexv2/latest/dg/migrate.html
2409
+ # @return [Array<Types::MigrationAlert>]
2410
+ #
2411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrationResponse AWS API Documentation
2412
+ #
2413
+ class GetMigrationResponse < Struct.new(
2414
+ :migration_id,
2415
+ :v1_bot_name,
2416
+ :v1_bot_version,
2417
+ :v1_bot_locale,
2418
+ :v2_bot_id,
2419
+ :v2_bot_role,
2420
+ :migration_status,
2421
+ :migration_strategy,
2422
+ :migration_timestamp,
2423
+ :alerts)
2424
+ SENSITIVE = []
2425
+ include Aws::Structure
2426
+ end
2427
+
2428
+ # @note When making an API call, you may pass GetMigrationsRequest
2429
+ # data as a hash:
2430
+ #
2431
+ # {
2432
+ # sort_by_attribute: "V1_BOT_NAME", # accepts V1_BOT_NAME, MIGRATION_DATE_TIME
2433
+ # sort_by_order: "ASCENDING", # accepts ASCENDING, DESCENDING
2434
+ # v1_bot_name_contains: "BotName",
2435
+ # migration_status_equals: "IN_PROGRESS", # accepts IN_PROGRESS, COMPLETED, FAILED
2436
+ # max_results: 1,
2437
+ # next_token: "NextToken",
2438
+ # }
2439
+ #
2440
+ # @!attribute [rw] sort_by_attribute
2441
+ # The field to sort the list of migrations by. You can sort by the
2442
+ # Amazon Lex V1 bot name or the date and time that the migration was
2443
+ # started.
2444
+ # @return [String]
2445
+ #
2446
+ # @!attribute [rw] sort_by_order
2447
+ # The order so sort the list.
2448
+ # @return [String]
2449
+ #
2450
+ # @!attribute [rw] v1_bot_name_contains
2451
+ # Filters the list to contain only bots whose name contains the
2452
+ # specified string. The string is matched anywhere in bot name.
2453
+ # @return [String]
2454
+ #
2455
+ # @!attribute [rw] migration_status_equals
2456
+ # Filters the list to contain only migrations in the specified state.
2457
+ # @return [String]
2458
+ #
2459
+ # @!attribute [rw] max_results
2460
+ # The maximum number of migrations to return in the response. The
2461
+ # default is 10.
2462
+ # @return [Integer]
2463
+ #
2464
+ # @!attribute [rw] next_token
2465
+ # A pagination token that fetches the next page of migrations. If the
2466
+ # response to this operation is truncated, Amazon Lex returns a
2467
+ # pagination token in the response. To fetch the next page of
2468
+ # migrations, specify the pagination token in the request.
2469
+ # @return [String]
2470
+ #
2471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrationsRequest AWS API Documentation
2472
+ #
2473
+ class GetMigrationsRequest < Struct.new(
2474
+ :sort_by_attribute,
2475
+ :sort_by_order,
2476
+ :v1_bot_name_contains,
2477
+ :migration_status_equals,
2478
+ :max_results,
2479
+ :next_token)
2480
+ SENSITIVE = []
2481
+ include Aws::Structure
2482
+ end
2483
+
2484
+ # @!attribute [rw] migration_summaries
2485
+ # An array of summaries for migrations from Amazon Lex V1 to Amazon
2486
+ # Lex V2. To see details of the migration, use the `migrationId` from
2487
+ # the summary in a call to the operation.
2488
+ # @return [Array<Types::MigrationSummary>]
2489
+ #
2490
+ # @!attribute [rw] next_token
2491
+ # If the response is truncated, it includes a pagination token that
2492
+ # you can specify in your next request to fetch the next page of
2493
+ # migrations.
2494
+ # @return [String]
2495
+ #
2496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetMigrationsResponse AWS API Documentation
2497
+ #
2498
+ class GetMigrationsResponse < Struct.new(
2499
+ :migration_summaries,
2500
+ :next_token)
2501
+ SENSITIVE = []
2502
+ include Aws::Structure
2503
+ end
2504
+
2314
2505
  # @note When making an API call, you may pass GetSlotTypeRequest
2315
2506
  # data as a hash:
2316
2507
  #
@@ -2889,6 +3080,106 @@ module Aws::LexModelBuildingService
2889
3080
  include Aws::Structure
2890
3081
  end
2891
3082
 
3083
+ # Provides information about alerts and warnings that Amazon Lex sends
3084
+ # during a migration. The alerts include information about how to
3085
+ # resolve the issue.
3086
+ #
3087
+ # @!attribute [rw] type
3088
+ # The type of alert. There are two kinds of alerts:
3089
+ #
3090
+ # * `ERROR` - There was an issue with the migration that can't be
3091
+ # resolved. The migration stops.
3092
+ #
3093
+ # * `WARN` - There was an issue with the migration that requires
3094
+ # manual changes to the new Amazon Lex V2 bot. The migration
3095
+ # continues.
3096
+ # @return [String]
3097
+ #
3098
+ # @!attribute [rw] message
3099
+ # A message that describes why the alert was issued.
3100
+ # @return [String]
3101
+ #
3102
+ # @!attribute [rw] details
3103
+ # Additional details about the alert.
3104
+ # @return [Array<String>]
3105
+ #
3106
+ # @!attribute [rw] reference_urls
3107
+ # A link to the Amazon Lex documentation that describes how to resolve
3108
+ # the alert.
3109
+ # @return [Array<String>]
3110
+ #
3111
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/MigrationAlert AWS API Documentation
3112
+ #
3113
+ class MigrationAlert < Struct.new(
3114
+ :type,
3115
+ :message,
3116
+ :details,
3117
+ :reference_urls)
3118
+ SENSITIVE = []
3119
+ include Aws::Structure
3120
+ end
3121
+
3122
+ # Provides information about migrating a bot from Amazon Lex V1 to
3123
+ # Amazon Lex V2.
3124
+ #
3125
+ # @!attribute [rw] migration_id
3126
+ # The unique identifier that Amazon Lex assigned to the migration.
3127
+ # @return [String]
3128
+ #
3129
+ # @!attribute [rw] v1_bot_name
3130
+ # The name of the Amazon Lex V1 bot that is the source of the
3131
+ # migration.
3132
+ # @return [String]
3133
+ #
3134
+ # @!attribute [rw] v1_bot_version
3135
+ # The version of the Amazon Lex V1 bot that is the source of the
3136
+ # migration.
3137
+ # @return [String]
3138
+ #
3139
+ # @!attribute [rw] v1_bot_locale
3140
+ # The locale of the Amazon Lex V1 bot that is the source of the
3141
+ # migration.
3142
+ # @return [String]
3143
+ #
3144
+ # @!attribute [rw] v2_bot_id
3145
+ # The unique identifier of the Amazon Lex V2 that is the destination
3146
+ # of the migration.
3147
+ # @return [String]
3148
+ #
3149
+ # @!attribute [rw] v2_bot_role
3150
+ # The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.
3151
+ # @return [String]
3152
+ #
3153
+ # @!attribute [rw] migration_status
3154
+ # The status of the operation. When the status is `COMPLETE` the bot
3155
+ # is available in Amazon Lex V2. There may be alerts and warnings that
3156
+ # need to be resolved to complete the migration.
3157
+ # @return [String]
3158
+ #
3159
+ # @!attribute [rw] migration_strategy
3160
+ # The strategy used to conduct the migration.
3161
+ # @return [String]
3162
+ #
3163
+ # @!attribute [rw] migration_timestamp
3164
+ # The date and time that the migration started.
3165
+ # @return [Time]
3166
+ #
3167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/MigrationSummary AWS API Documentation
3168
+ #
3169
+ class MigrationSummary < Struct.new(
3170
+ :migration_id,
3171
+ :v1_bot_name,
3172
+ :v1_bot_version,
3173
+ :v1_bot_locale,
3174
+ :v2_bot_id,
3175
+ :v2_bot_role,
3176
+ :migration_status,
3177
+ :migration_strategy,
3178
+ :migration_timestamp)
3179
+ SENSITIVE = []
3180
+ include Aws::Structure
3181
+ end
3182
+
2892
3183
  # The resource specified in the request was not found. Check the
2893
3184
  # resource and try again.
2894
3185
  #
@@ -4740,6 +5031,115 @@ module Aws::LexModelBuildingService
4740
5031
  include Aws::Structure
4741
5032
  end
4742
5033
 
5034
+ # @note When making an API call, you may pass StartMigrationRequest
5035
+ # data as a hash:
5036
+ #
5037
+ # {
5038
+ # v1_bot_name: "BotName", # required
5039
+ # v1_bot_version: "Version", # required
5040
+ # v2_bot_name: "V2BotName", # required
5041
+ # v2_bot_role: "IamRoleArn", # required
5042
+ # migration_strategy: "CREATE_NEW", # required, accepts CREATE_NEW, UPDATE_EXISTING
5043
+ # }
5044
+ #
5045
+ # @!attribute [rw] v1_bot_name
5046
+ # The name of the Amazon Lex V1 bot that you are migrating to Amazon
5047
+ # Lex V2.
5048
+ # @return [String]
5049
+ #
5050
+ # @!attribute [rw] v1_bot_version
5051
+ # The version of the bot to migrate to Amazon Lex V2. You can migrate
5052
+ # the `$LATEST` version as well as any numbered version.
5053
+ # @return [String]
5054
+ #
5055
+ # @!attribute [rw] v2_bot_name
5056
+ # The name of the Amazon Lex V2 bot that you are migrating the Amazon
5057
+ # Lex V1 bot to.
5058
+ #
5059
+ # * If the Amazon Lex V2 bot doesn't exist, you must use the
5060
+ # `CREATE_NEW` migration strategy.
5061
+ #
5062
+ # * If the Amazon Lex V2 bot exists, you must use the
5063
+ # `UPDATE_EXISTING` migration strategy to change the contents of the
5064
+ # Amazon Lex V2 bot.
5065
+ # @return [String]
5066
+ #
5067
+ # @!attribute [rw] v2_bot_role
5068
+ # The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.
5069
+ # @return [String]
5070
+ #
5071
+ # @!attribute [rw] migration_strategy
5072
+ # The strategy used to conduct the migration.
5073
+ #
5074
+ # * `CREATE_NEW` - Creates a new Amazon Lex V2 bot and migrates the
5075
+ # Amazon Lex V1 bot to the new bot.
5076
+ #
5077
+ # * `UPDATE_EXISTING` - Overwrites the existing Amazon Lex V2 bot
5078
+ # metadata and the locale being migrated. It doesn't change any
5079
+ # other locales in the Amazon Lex V2 bot. If the locale doesn't
5080
+ # exist, a new locale is created in the Amazon Lex V2 bot.
5081
+ # @return [String]
5082
+ #
5083
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigrationRequest AWS API Documentation
5084
+ #
5085
+ class StartMigrationRequest < Struct.new(
5086
+ :v1_bot_name,
5087
+ :v1_bot_version,
5088
+ :v2_bot_name,
5089
+ :v2_bot_role,
5090
+ :migration_strategy)
5091
+ SENSITIVE = []
5092
+ include Aws::Structure
5093
+ end
5094
+
5095
+ # @!attribute [rw] v1_bot_name
5096
+ # The name of the Amazon Lex V1 bot that you are migrating to Amazon
5097
+ # Lex V2.
5098
+ # @return [String]
5099
+ #
5100
+ # @!attribute [rw] v1_bot_version
5101
+ # The version of the bot to migrate to Amazon Lex V2.
5102
+ # @return [String]
5103
+ #
5104
+ # @!attribute [rw] v1_bot_locale
5105
+ # The locale used for the Amazon Lex V1 bot.
5106
+ # @return [String]
5107
+ #
5108
+ # @!attribute [rw] v2_bot_id
5109
+ # The unique identifier for the Amazon Lex V2 bot.
5110
+ # @return [String]
5111
+ #
5112
+ # @!attribute [rw] v2_bot_role
5113
+ # The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.
5114
+ # @return [String]
5115
+ #
5116
+ # @!attribute [rw] migration_id
5117
+ # The unique identifier that Amazon Lex assigned to the migration.
5118
+ # @return [String]
5119
+ #
5120
+ # @!attribute [rw] migration_strategy
5121
+ # The strategy used to conduct the migration.
5122
+ # @return [String]
5123
+ #
5124
+ # @!attribute [rw] migration_timestamp
5125
+ # The date and time that the migration started.
5126
+ # @return [Time]
5127
+ #
5128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigrationResponse AWS API Documentation
5129
+ #
5130
+ class StartMigrationResponse < Struct.new(
5131
+ :v1_bot_name,
5132
+ :v1_bot_version,
5133
+ :v1_bot_locale,
5134
+ :v2_bot_id,
5135
+ :v2_bot_role,
5136
+ :migration_id,
5137
+ :migration_strategy,
5138
+ :migration_timestamp)
5139
+ SENSITIVE = []
5140
+ include Aws::Structure
5141
+ end
5142
+
4743
5143
  # A collection of messages that convey information to the user. At
4744
5144
  # runtime, Amazon Lex selects the message to convey.
4745
5145
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-lexmodelbuildingservice
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.45.0
4
+ version: 1.46.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-01 00:00:00.000000000 Z
11
+ date: 2021-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -83,8 +83,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
85
  requirements: []
86
- rubyforge_project:
87
- rubygems_version: 2.7.6.2
86
+ rubygems_version: 3.1.6
88
87
  signing_key:
89
88
  specification_version: 4
90
89
  summary: AWS SDK for Ruby - Amazon Lex Model Building Service