aws-sdk-lexmodelbuildingservice 1.25.0 → 1.30.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -13,6 +13,7 @@ module Aws::LexModelBuildingService
13
13
 
14
14
  AliasName = Shapes::StringShape.new(name: 'AliasName')
15
15
  AliasNameOrListAll = Shapes::StringShape.new(name: 'AliasNameOrListAll')
16
+ AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
16
17
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
17
18
  Blob = Shapes::BlobShape.new(name: 'Blob')
18
19
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
@@ -120,6 +121,8 @@ module Aws::LexModelBuildingService
120
121
  LambdaARN = Shapes::StringShape.new(name: 'LambdaARN')
121
122
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
122
123
  ListOfUtterance = Shapes::ListShape.new(name: 'ListOfUtterance')
124
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
125
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
123
126
  ListsOfUtterances = Shapes::ListShape.new(name: 'ListsOfUtterances')
124
127
  Locale = Shapes::StringShape.new(name: 'Locale')
125
128
  LocaleList = Shapes::ListShape.new(name: 'LocaleList')
@@ -152,6 +155,7 @@ module Aws::LexModelBuildingService
152
155
  PutSlotTypeRequest = Shapes::StructureShape.new(name: 'PutSlotTypeRequest')
153
156
  PutSlotTypeResponse = Shapes::StructureShape.new(name: 'PutSlotTypeResponse')
154
157
  ReferenceType = Shapes::StringShape.new(name: 'ReferenceType')
158
+ RegexPattern = Shapes::StringShape.new(name: 'RegexPattern')
155
159
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
156
160
  ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
157
161
  ResourcePrefix = Shapes::StringShape.new(name: 'ResourcePrefix')
@@ -163,9 +167,12 @@ module Aws::LexModelBuildingService
163
167
  SlotConstraint = Shapes::StringShape.new(name: 'SlotConstraint')
164
168
  SlotList = Shapes::ListShape.new(name: 'SlotList')
165
169
  SlotName = Shapes::StringShape.new(name: 'SlotName')
170
+ SlotTypeConfiguration = Shapes::StructureShape.new(name: 'SlotTypeConfiguration')
171
+ SlotTypeConfigurations = Shapes::ListShape.new(name: 'SlotTypeConfigurations')
166
172
  SlotTypeMetadata = Shapes::StructureShape.new(name: 'SlotTypeMetadata')
167
173
  SlotTypeMetadataList = Shapes::ListShape.new(name: 'SlotTypeMetadataList')
168
174
  SlotTypeName = Shapes::StringShape.new(name: 'SlotTypeName')
175
+ SlotTypeRegexConfiguration = Shapes::StructureShape.new(name: 'SlotTypeRegexConfiguration')
169
176
  SlotUtteranceList = Shapes::ListShape.new(name: 'SlotUtteranceList')
170
177
  SlotValueSelectionStrategy = Shapes::StringShape.new(name: 'SlotValueSelectionStrategy')
171
178
  StartImportRequest = Shapes::StructureShape.new(name: 'StartImportRequest')
@@ -176,7 +183,16 @@ module Aws::LexModelBuildingService
176
183
  String = Shapes::StringShape.new(name: 'String')
177
184
  StringList = Shapes::ListShape.new(name: 'StringList')
178
185
  SynonymList = Shapes::ListShape.new(name: 'SynonymList')
186
+ Tag = Shapes::StructureShape.new(name: 'Tag')
187
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
188
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
189
+ TagList = Shapes::ListShape.new(name: 'TagList')
190
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
191
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
192
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
179
193
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
194
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
195
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
180
196
  UserId = Shapes::StringShape.new(name: 'UserId')
181
197
  Utterance = Shapes::StringShape.new(name: 'Utterance')
182
198
  UtteranceData = Shapes::StructureShape.new(name: 'UtteranceData')
@@ -315,6 +331,8 @@ module Aws::LexModelBuildingService
315
331
  CreateSlotTypeVersionResponse.add_member(:version, Shapes::ShapeRef.new(shape: Version, location_name: "version"))
316
332
  CreateSlotTypeVersionResponse.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
317
333
  CreateSlotTypeVersionResponse.add_member(:value_selection_strategy, Shapes::ShapeRef.new(shape: SlotValueSelectionStrategy, location_name: "valueSelectionStrategy"))
334
+ CreateSlotTypeVersionResponse.add_member(:parent_slot_type_signature, Shapes::ShapeRef.new(shape: CustomOrBuiltinSlotTypeName, location_name: "parentSlotTypeSignature"))
335
+ CreateSlotTypeVersionResponse.add_member(:slot_type_configurations, Shapes::ShapeRef.new(shape: SlotTypeConfigurations, location_name: "slotTypeConfigurations"))
318
336
  CreateSlotTypeVersionResponse.struct_class = Types::CreateSlotTypeVersionResponse
319
337
 
320
338
  DeleteBotAliasRequest.add_member(:name, Shapes::ShapeRef.new(shape: AliasName, required: true, location: "uri", location_name: "name"))
@@ -562,6 +580,8 @@ module Aws::LexModelBuildingService
562
580
  GetSlotTypeResponse.add_member(:version, Shapes::ShapeRef.new(shape: Version, location_name: "version"))
563
581
  GetSlotTypeResponse.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
564
582
  GetSlotTypeResponse.add_member(:value_selection_strategy, Shapes::ShapeRef.new(shape: SlotValueSelectionStrategy, location_name: "valueSelectionStrategy"))
583
+ GetSlotTypeResponse.add_member(:parent_slot_type_signature, Shapes::ShapeRef.new(shape: CustomOrBuiltinSlotTypeName, location_name: "parentSlotTypeSignature"))
584
+ GetSlotTypeResponse.add_member(:slot_type_configurations, Shapes::ShapeRef.new(shape: SlotTypeConfigurations, location_name: "slotTypeConfigurations"))
565
585
  GetSlotTypeResponse.struct_class = Types::GetSlotTypeResponse
566
586
 
567
587
  GetSlotTypeVersionsRequest.add_member(:name, Shapes::ShapeRef.new(shape: SlotTypeName, required: true, location: "uri", location_name: "name"))
@@ -617,6 +637,12 @@ module Aws::LexModelBuildingService
617
637
 
618
638
  ListOfUtterance.member = Shapes::ShapeRef.new(shape: UtteranceData)
619
639
 
640
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location: "uri", location_name: "resourceArn"))
641
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
642
+
643
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
644
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
645
+
620
646
  ListsOfUtterances.member = Shapes::ShapeRef.new(shape: UtteranceList)
621
647
 
622
648
  LocaleList.member = Shapes::ShapeRef.new(shape: Locale)
@@ -662,6 +688,7 @@ module Aws::LexModelBuildingService
662
688
  PutBotAliasRequest.add_member(:bot_name, Shapes::ShapeRef.new(shape: BotName, required: true, location: "uri", location_name: "botName"))
663
689
  PutBotAliasRequest.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
664
690
  PutBotAliasRequest.add_member(:conversation_logs, Shapes::ShapeRef.new(shape: ConversationLogsRequest, location_name: "conversationLogs"))
691
+ PutBotAliasRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
665
692
  PutBotAliasRequest.struct_class = Types::PutBotAliasRequest
666
693
 
667
694
  PutBotAliasResponse.add_member(:name, Shapes::ShapeRef.new(shape: AliasName, location_name: "name"))
@@ -672,6 +699,7 @@ module Aws::LexModelBuildingService
672
699
  PutBotAliasResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdDate"))
673
700
  PutBotAliasResponse.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
674
701
  PutBotAliasResponse.add_member(:conversation_logs, Shapes::ShapeRef.new(shape: ConversationLogsResponse, location_name: "conversationLogs"))
702
+ PutBotAliasResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
675
703
  PutBotAliasResponse.struct_class = Types::PutBotAliasResponse
676
704
 
677
705
  PutBotRequest.add_member(:name, Shapes::ShapeRef.new(shape: BotName, required: true, location: "uri", location_name: "name"))
@@ -687,6 +715,7 @@ module Aws::LexModelBuildingService
687
715
  PutBotRequest.add_member(:child_directed, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "childDirected"))
688
716
  PutBotRequest.add_member(:detect_sentiment, Shapes::ShapeRef.new(shape: Boolean, location_name: "detectSentiment"))
689
717
  PutBotRequest.add_member(:create_version, Shapes::ShapeRef.new(shape: Boolean, location_name: "createVersion"))
718
+ PutBotRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
690
719
  PutBotRequest.struct_class = Types::PutBotRequest
691
720
 
692
721
  PutBotResponse.add_member(:name, Shapes::ShapeRef.new(shape: BotName, location_name: "name"))
@@ -706,6 +735,7 @@ module Aws::LexModelBuildingService
706
735
  PutBotResponse.add_member(:child_directed, Shapes::ShapeRef.new(shape: Boolean, location_name: "childDirected"))
707
736
  PutBotResponse.add_member(:create_version, Shapes::ShapeRef.new(shape: Boolean, location_name: "createVersion"))
708
737
  PutBotResponse.add_member(:detect_sentiment, Shapes::ShapeRef.new(shape: Boolean, location_name: "detectSentiment"))
738
+ PutBotResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
709
739
  PutBotResponse.struct_class = Types::PutBotResponse
710
740
 
711
741
  PutIntentRequest.add_member(:name, Shapes::ShapeRef.new(shape: IntentName, required: true, location: "uri", location_name: "name"))
@@ -747,6 +777,8 @@ module Aws::LexModelBuildingService
747
777
  PutSlotTypeRequest.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
748
778
  PutSlotTypeRequest.add_member(:value_selection_strategy, Shapes::ShapeRef.new(shape: SlotValueSelectionStrategy, location_name: "valueSelectionStrategy"))
749
779
  PutSlotTypeRequest.add_member(:create_version, Shapes::ShapeRef.new(shape: Boolean, location_name: "createVersion"))
780
+ PutSlotTypeRequest.add_member(:parent_slot_type_signature, Shapes::ShapeRef.new(shape: CustomOrBuiltinSlotTypeName, location_name: "parentSlotTypeSignature"))
781
+ PutSlotTypeRequest.add_member(:slot_type_configurations, Shapes::ShapeRef.new(shape: SlotTypeConfigurations, location_name: "slotTypeConfigurations"))
750
782
  PutSlotTypeRequest.struct_class = Types::PutSlotTypeRequest
751
783
 
752
784
  PutSlotTypeResponse.add_member(:name, Shapes::ShapeRef.new(shape: SlotTypeName, location_name: "name"))
@@ -758,6 +790,8 @@ module Aws::LexModelBuildingService
758
790
  PutSlotTypeResponse.add_member(:checksum, Shapes::ShapeRef.new(shape: String, location_name: "checksum"))
759
791
  PutSlotTypeResponse.add_member(:value_selection_strategy, Shapes::ShapeRef.new(shape: SlotValueSelectionStrategy, location_name: "valueSelectionStrategy"))
760
792
  PutSlotTypeResponse.add_member(:create_version, Shapes::ShapeRef.new(shape: Boolean, location_name: "createVersion"))
793
+ PutSlotTypeResponse.add_member(:parent_slot_type_signature, Shapes::ShapeRef.new(shape: CustomOrBuiltinSlotTypeName, location_name: "parentSlotTypeSignature"))
794
+ PutSlotTypeResponse.add_member(:slot_type_configurations, Shapes::ShapeRef.new(shape: SlotTypeConfigurations, location_name: "slotTypeConfigurations"))
761
795
  PutSlotTypeResponse.struct_class = Types::PutSlotTypeResponse
762
796
 
763
797
  ResourceInUseException.add_member(:reference_type, Shapes::ShapeRef.new(shape: ReferenceType, location_name: "referenceType"))
@@ -782,6 +816,11 @@ module Aws::LexModelBuildingService
782
816
 
783
817
  SlotList.member = Shapes::ShapeRef.new(shape: Slot)
784
818
 
819
+ SlotTypeConfiguration.add_member(:regex_configuration, Shapes::ShapeRef.new(shape: SlotTypeRegexConfiguration, location_name: "regexConfiguration"))
820
+ SlotTypeConfiguration.struct_class = Types::SlotTypeConfiguration
821
+
822
+ SlotTypeConfigurations.member = Shapes::ShapeRef.new(shape: SlotTypeConfiguration)
823
+
785
824
  SlotTypeMetadata.add_member(:name, Shapes::ShapeRef.new(shape: SlotTypeName, location_name: "name"))
786
825
  SlotTypeMetadata.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
787
826
  SlotTypeMetadata.add_member(:last_updated_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastUpdatedDate"))
@@ -791,11 +830,15 @@ module Aws::LexModelBuildingService
791
830
 
792
831
  SlotTypeMetadataList.member = Shapes::ShapeRef.new(shape: SlotTypeMetadata)
793
832
 
833
+ SlotTypeRegexConfiguration.add_member(:pattern, Shapes::ShapeRef.new(shape: RegexPattern, required: true, location_name: "pattern"))
834
+ SlotTypeRegexConfiguration.struct_class = Types::SlotTypeRegexConfiguration
835
+
794
836
  SlotUtteranceList.member = Shapes::ShapeRef.new(shape: Utterance)
795
837
 
796
838
  StartImportRequest.add_member(:payload, Shapes::ShapeRef.new(shape: Blob, required: true, location_name: "payload"))
797
839
  StartImportRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
798
840
  StartImportRequest.add_member(:merge_strategy, Shapes::ShapeRef.new(shape: MergeStrategy, required: true, location_name: "mergeStrategy"))
841
+ StartImportRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
799
842
  StartImportRequest.struct_class = Types::StartImportRequest
800
843
 
801
844
  StartImportResponse.add_member(:name, Shapes::ShapeRef.new(shape: Name, location_name: "name"))
@@ -803,6 +846,7 @@ module Aws::LexModelBuildingService
803
846
  StartImportResponse.add_member(:merge_strategy, Shapes::ShapeRef.new(shape: MergeStrategy, location_name: "mergeStrategy"))
804
847
  StartImportResponse.add_member(:import_id, Shapes::ShapeRef.new(shape: String, location_name: "importId"))
805
848
  StartImportResponse.add_member(:import_status, Shapes::ShapeRef.new(shape: ImportStatus, location_name: "importStatus"))
849
+ StartImportResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
806
850
  StartImportResponse.add_member(:created_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdDate"))
807
851
  StartImportResponse.struct_class = Types::StartImportResponse
808
852
 
@@ -814,6 +858,26 @@ module Aws::LexModelBuildingService
814
858
 
815
859
  SynonymList.member = Shapes::ShapeRef.new(shape: Value)
816
860
 
861
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "key"))
862
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "value"))
863
+ Tag.struct_class = Types::Tag
864
+
865
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
866
+
867
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
868
+
869
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location: "uri", location_name: "resourceArn"))
870
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "tags"))
871
+ TagResourceRequest.struct_class = Types::TagResourceRequest
872
+
873
+ TagResourceResponse.struct_class = Types::TagResourceResponse
874
+
875
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location: "uri", location_name: "resourceArn"))
876
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location: "querystring", location_name: "tagKeys"))
877
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
878
+
879
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
880
+
817
881
  UtteranceData.add_member(:utterance_string, Shapes::ShapeRef.new(shape: UtteranceString, location_name: "utteranceString"))
818
882
  UtteranceData.add_member(:count, Shapes::ShapeRef.new(shape: Count, location_name: "count"))
819
883
  UtteranceData.add_member(:distinct_users, Shapes::ShapeRef.new(shape: Count, location_name: "distinctUsers"))
@@ -1291,6 +1355,18 @@ module Aws::LexModelBuildingService
1291
1355
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1292
1356
  end)
1293
1357
 
1358
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1359
+ o.name = "ListTagsForResource"
1360
+ o.http_method = "GET"
1361
+ o.http_request_uri = "/tags/{resourceArn}"
1362
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
1363
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
1364
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1365
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1366
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1367
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1368
+ end)
1369
+
1294
1370
  api.add_operation(:put_bot, Seahorse::Model::Operation.new.tap do |o|
1295
1371
  o.name = "PutBot"
1296
1372
  o.http_method = "PUT"
@@ -1353,6 +1429,32 @@ module Aws::LexModelBuildingService
1353
1429
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1354
1430
  o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1355
1431
  end)
1432
+
1433
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1434
+ o.name = "TagResource"
1435
+ o.http_method = "POST"
1436
+ o.http_request_uri = "/tags/{resourceArn}"
1437
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
1438
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
1439
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1440
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1441
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1442
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1443
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1444
+ end)
1445
+
1446
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1447
+ o.name = "UntagResource"
1448
+ o.http_method = "DELETE"
1449
+ o.http_request_uri = "/tags/{resourceArn}"
1450
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
1451
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
1452
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1453
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
1454
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1455
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1456
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1457
+ end)
1356
1458
  end
1357
1459
 
1358
1460
  end
@@ -6,6 +6,35 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::LexModelBuildingService
9
+
10
+ # When LexModelBuildingService returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::LexModelBuildingService::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all LexModelBuildingService errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::LexModelBuildingService::Errors::ServiceError
18
+ # # rescues all LexModelBuildingService API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {BadRequestException}
29
+ # * {ConflictException}
30
+ # * {InternalFailureException}
31
+ # * {LimitExceededException}
32
+ # * {NotFoundException}
33
+ # * {PreconditionFailedException}
34
+ # * {ResourceInUseException}
35
+ #
36
+ # Additionally, error classes are dynamically generated for service errors based on the error code
37
+ # if they are not defined above.
9
38
  module Errors
10
39
 
11
40
  extend Aws::Errors::DynamicErrors
@@ -23,7 +52,6 @@ module Aws::LexModelBuildingService
23
52
  def message
24
53
  @message || @data[:message]
25
54
  end
26
-
27
55
  end
28
56
 
29
57
  class ConflictException < ServiceError
@@ -39,7 +67,6 @@ module Aws::LexModelBuildingService
39
67
  def message
40
68
  @message || @data[:message]
41
69
  end
42
-
43
70
  end
44
71
 
45
72
  class InternalFailureException < ServiceError
@@ -55,7 +82,6 @@ module Aws::LexModelBuildingService
55
82
  def message
56
83
  @message || @data[:message]
57
84
  end
58
-
59
85
  end
60
86
 
61
87
  class LimitExceededException < ServiceError
@@ -76,7 +102,6 @@ module Aws::LexModelBuildingService
76
102
  def message
77
103
  @message || @data[:message]
78
104
  end
79
-
80
105
  end
81
106
 
82
107
  class NotFoundException < ServiceError
@@ -92,7 +117,6 @@ module Aws::LexModelBuildingService
92
117
  def message
93
118
  @message || @data[:message]
94
119
  end
95
-
96
120
  end
97
121
 
98
122
  class PreconditionFailedException < ServiceError
@@ -108,7 +132,6 @@ module Aws::LexModelBuildingService
108
132
  def message
109
133
  @message || @data[:message]
110
134
  end
111
-
112
135
  end
113
136
 
114
137
  class ResourceInUseException < ServiceError
@@ -129,7 +152,6 @@ module Aws::LexModelBuildingService
129
152
  def example_reference
130
153
  @data[:example_reference]
131
154
  end
132
-
133
155
  end
134
156
 
135
157
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::LexModelBuildingService
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -689,6 +689,15 @@ module Aws::LexModelBuildingService
689
689
  # slot. For more information, see PutSlotType.
690
690
  # @return [String]
691
691
  #
692
+ # @!attribute [rw] parent_slot_type_signature
693
+ # The built-in slot type used a the parent of the slot type.
694
+ # @return [String]
695
+ #
696
+ # @!attribute [rw] slot_type_configurations
697
+ # Configuration information that extends the parent built-in slot
698
+ # type.
699
+ # @return [Array<Types::SlotTypeConfiguration>]
700
+ #
692
701
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/CreateSlotTypeVersionResponse AWS API Documentation
693
702
  #
694
703
  class CreateSlotTypeVersionResponse < Struct.new(
@@ -699,7 +708,9 @@ module Aws::LexModelBuildingService
699
708
  :created_date,
700
709
  :version,
701
710
  :checksum,
702
- :value_selection_strategy)
711
+ :value_selection_strategy,
712
+ :parent_slot_type_signature,
713
+ :slot_type_configurations)
703
714
  include Aws::Structure
704
715
  end
705
716
 
@@ -2230,6 +2241,15 @@ module Aws::LexModelBuildingService
2230
2241
  # slot. For more information, see PutSlotType.
2231
2242
  # @return [String]
2232
2243
  #
2244
+ # @!attribute [rw] parent_slot_type_signature
2245
+ # The built-in slot type used as a parent for the slot type.
2246
+ # @return [String]
2247
+ #
2248
+ # @!attribute [rw] slot_type_configurations
2249
+ # Configuration information that extends the parent built-in slot
2250
+ # type.
2251
+ # @return [Array<Types::SlotTypeConfiguration>]
2252
+ #
2233
2253
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/GetSlotTypeResponse AWS API Documentation
2234
2254
  #
2235
2255
  class GetSlotTypeResponse < Struct.new(
@@ -2240,7 +2260,9 @@ module Aws::LexModelBuildingService
2240
2260
  :created_date,
2241
2261
  :version,
2242
2262
  :checksum,
2243
- :value_selection_strategy)
2263
+ :value_selection_strategy,
2264
+ :parent_slot_type_signature,
2265
+ :slot_type_configurations)
2244
2266
  include Aws::Structure
2245
2267
  end
2246
2268
 
@@ -2496,6 +2518,36 @@ module Aws::LexModelBuildingService
2496
2518
  include Aws::Structure
2497
2519
  end
2498
2520
 
2521
+ # @note When making an API call, you may pass ListTagsForResourceRequest
2522
+ # data as a hash:
2523
+ #
2524
+ # {
2525
+ # resource_arn: "AmazonResourceName", # required
2526
+ # }
2527
+ #
2528
+ # @!attribute [rw] resource_arn
2529
+ # The Amazon Resource Name (ARN) of the resource to get a list of tags
2530
+ # for.
2531
+ # @return [String]
2532
+ #
2533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResourceRequest AWS API Documentation
2534
+ #
2535
+ class ListTagsForResourceRequest < Struct.new(
2536
+ :resource_arn)
2537
+ include Aws::Structure
2538
+ end
2539
+
2540
+ # @!attribute [rw] tags
2541
+ # The tags associated with a resource.
2542
+ # @return [Array<Types::Tag>]
2543
+ #
2544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/ListTagsForResourceResponse AWS API Documentation
2545
+ #
2546
+ class ListTagsForResourceResponse < Struct.new(
2547
+ :tags)
2548
+ include Aws::Structure
2549
+ end
2550
+
2499
2551
  # Settings used to configure delivery mode and destination for
2500
2552
  # conversation logs.
2501
2553
  #
@@ -2706,6 +2758,12 @@ module Aws::LexModelBuildingService
2706
2758
  # ],
2707
2759
  # iam_role_arn: "IamRoleArn", # required
2708
2760
  # },
2761
+ # tags: [
2762
+ # {
2763
+ # key: "TagKey", # required
2764
+ # value: "TagValue", # required
2765
+ # },
2766
+ # ],
2709
2767
  # }
2710
2768
  #
2711
2769
  # @!attribute [rw] name
@@ -2741,6 +2799,13 @@ module Aws::LexModelBuildingService
2741
2799
  # Settings for conversation logs for the alias.
2742
2800
  # @return [Types::ConversationLogsRequest]
2743
2801
  #
2802
+ # @!attribute [rw] tags
2803
+ # A list of tags to add to the bot alias. You can only add tags when
2804
+ # you create an alias, you can't use the `PutBotAlias` operation to
2805
+ # update the tags on a bot alias. To update tags, use the
2806
+ # `TagResource` operation.
2807
+ # @return [Array<Types::Tag>]
2808
+ #
2744
2809
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAliasRequest AWS API Documentation
2745
2810
  #
2746
2811
  class PutBotAliasRequest < Struct.new(
@@ -2749,7 +2814,8 @@ module Aws::LexModelBuildingService
2749
2814
  :bot_version,
2750
2815
  :bot_name,
2751
2816
  :checksum,
2752
- :conversation_logs)
2817
+ :conversation_logs,
2818
+ :tags)
2753
2819
  include Aws::Structure
2754
2820
  end
2755
2821
 
@@ -2787,6 +2853,10 @@ module Aws::LexModelBuildingService
2787
2853
  # for the alias.
2788
2854
  # @return [Types::ConversationLogsResponse]
2789
2855
  #
2856
+ # @!attribute [rw] tags
2857
+ # A list of tags associated with a bot.
2858
+ # @return [Array<Types::Tag>]
2859
+ #
2790
2860
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotAliasResponse AWS API Documentation
2791
2861
  #
2792
2862
  class PutBotAliasResponse < Struct.new(
@@ -2797,7 +2867,8 @@ module Aws::LexModelBuildingService
2797
2867
  :last_updated_date,
2798
2868
  :created_date,
2799
2869
  :checksum,
2800
- :conversation_logs)
2870
+ :conversation_logs,
2871
+ :tags)
2801
2872
  include Aws::Structure
2802
2873
  end
2803
2874
 
@@ -2842,6 +2913,12 @@ module Aws::LexModelBuildingService
2842
2913
  # child_directed: false, # required
2843
2914
  # detect_sentiment: false,
2844
2915
  # create_version: false,
2916
+ # tags: [
2917
+ # {
2918
+ # key: "TagKey", # required
2919
+ # value: "TagValue", # required
2920
+ # },
2921
+ # ],
2845
2922
  # }
2846
2923
  #
2847
2924
  # @!attribute [rw] name
@@ -3033,6 +3110,12 @@ module Aws::LexModelBuildingService
3033
3110
  # don't specify `createVersion`, the default is `false`.
3034
3111
  # @return [Boolean]
3035
3112
  #
3113
+ # @!attribute [rw] tags
3114
+ # A list of tags to add to the bot. You can only add tags when you
3115
+ # create a bot, you can't use the `PutBot` operation to update the
3116
+ # tags on a bot. To update tags, use the `TagResource` operation.
3117
+ # @return [Array<Types::Tag>]
3118
+ #
3036
3119
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotRequest AWS API Documentation
3037
3120
  #
3038
3121
  class PutBotRequest < Struct.new(
@@ -3048,7 +3131,8 @@ module Aws::LexModelBuildingService
3048
3131
  :locale,
3049
3132
  :child_directed,
3050
3133
  :detect_sentiment,
3051
- :create_version)
3134
+ :create_version,
3135
+ :tags)
3052
3136
  include Aws::Structure
3053
3137
  end
3054
3138
 
@@ -3177,6 +3261,10 @@ module Aws::LexModelBuildingService
3177
3261
  # `false` in the response.
3178
3262
  # @return [Boolean]
3179
3263
  #
3264
+ # @!attribute [rw] tags
3265
+ # A list of tags associated with the bot.
3266
+ # @return [Array<Types::Tag>]
3267
+ #
3180
3268
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutBotResponse AWS API Documentation
3181
3269
  #
3182
3270
  class PutBotResponse < Struct.new(
@@ -3196,7 +3284,8 @@ module Aws::LexModelBuildingService
3196
3284
  :locale,
3197
3285
  :child_directed,
3198
3286
  :create_version,
3199
- :detect_sentiment)
3287
+ :detect_sentiment,
3288
+ :tags)
3200
3289
  include Aws::Structure
3201
3290
  end
3202
3291
 
@@ -3588,6 +3677,14 @@ module Aws::LexModelBuildingService
3588
3677
  # checksum: "String",
3589
3678
  # value_selection_strategy: "ORIGINAL_VALUE", # accepts ORIGINAL_VALUE, TOP_RESOLUTION
3590
3679
  # create_version: false,
3680
+ # parent_slot_type_signature: "CustomOrBuiltinSlotTypeName",
3681
+ # slot_type_configurations: [
3682
+ # {
3683
+ # regex_configuration: {
3684
+ # pattern: "RegexPattern", # required
3685
+ # },
3686
+ # },
3687
+ # ],
3591
3688
  # }
3592
3689
  #
3593
3690
  # @!attribute [rw] name
@@ -3661,6 +3758,20 @@ module Aws::LexModelBuildingService
3661
3758
  # `false`.
3662
3759
  # @return [Boolean]
3663
3760
  #
3761
+ # @!attribute [rw] parent_slot_type_signature
3762
+ # The built-in slot type used as the parent of the slot type. When you
3763
+ # define a parent slot type, the new slot type has all of the same
3764
+ # configuration as the parent.
3765
+ #
3766
+ # Only `AMAZON.AlphaNumeric` is supported.
3767
+ # @return [String]
3768
+ #
3769
+ # @!attribute [rw] slot_type_configurations
3770
+ # Configuration information that extends the parent built-in slot
3771
+ # type. The configuration is added to the settings for the parent slot
3772
+ # type.
3773
+ # @return [Array<Types::SlotTypeConfiguration>]
3774
+ #
3664
3775
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotTypeRequest AWS API Documentation
3665
3776
  #
3666
3777
  class PutSlotTypeRequest < Struct.new(
@@ -3669,7 +3780,9 @@ module Aws::LexModelBuildingService
3669
3780
  :enumeration_values,
3670
3781
  :checksum,
3671
3782
  :value_selection_strategy,
3672
- :create_version)
3783
+ :create_version,
3784
+ :parent_slot_type_signature,
3785
+ :slot_type_configurations)
3673
3786
  include Aws::Structure
3674
3787
  end
3675
3788
 
@@ -3715,6 +3828,15 @@ module Aws::LexModelBuildingService
3715
3828
  # `createVersion` field is set to false in the response.
3716
3829
  # @return [Boolean]
3717
3830
  #
3831
+ # @!attribute [rw] parent_slot_type_signature
3832
+ # The built-in slot type used as the parent of the slot type.
3833
+ # @return [String]
3834
+ #
3835
+ # @!attribute [rw] slot_type_configurations
3836
+ # Configuration information that extends the parent built-in slot
3837
+ # type.
3838
+ # @return [Array<Types::SlotTypeConfiguration>]
3839
+ #
3718
3840
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/PutSlotTypeResponse AWS API Documentation
3719
3841
  #
3720
3842
  class PutSlotTypeResponse < Struct.new(
@@ -3726,7 +3848,9 @@ module Aws::LexModelBuildingService
3726
3848
  :version,
3727
3849
  :checksum,
3728
3850
  :value_selection_strategy,
3729
- :create_version)
3851
+ :create_version,
3852
+ :parent_slot_type_signature,
3853
+ :slot_type_configurations)
3730
3854
  include Aws::Structure
3731
3855
  end
3732
3856
 
@@ -3887,6 +4011,28 @@ module Aws::LexModelBuildingService
3887
4011
  include Aws::Structure
3888
4012
  end
3889
4013
 
4014
+ # Provides configuration information for a slot type.
4015
+ #
4016
+ # @note When making an API call, you may pass SlotTypeConfiguration
4017
+ # data as a hash:
4018
+ #
4019
+ # {
4020
+ # regex_configuration: {
4021
+ # pattern: "RegexPattern", # required
4022
+ # },
4023
+ # }
4024
+ #
4025
+ # @!attribute [rw] regex_configuration
4026
+ # A regular expression used to validate the value of a slot.
4027
+ # @return [Types::SlotTypeRegexConfiguration]
4028
+ #
4029
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/SlotTypeConfiguration AWS API Documentation
4030
+ #
4031
+ class SlotTypeConfiguration < Struct.new(
4032
+ :regex_configuration)
4033
+ include Aws::Structure
4034
+ end
4035
+
3890
4036
  # Provides information about a slot type..
3891
4037
  #
3892
4038
  # @!attribute [rw] name
@@ -3921,6 +4067,44 @@ module Aws::LexModelBuildingService
3921
4067
  include Aws::Structure
3922
4068
  end
3923
4069
 
4070
+ # Provides a regular expression used to validate the value of a slot.
4071
+ #
4072
+ # @note When making an API call, you may pass SlotTypeRegexConfiguration
4073
+ # data as a hash:
4074
+ #
4075
+ # {
4076
+ # pattern: "RegexPattern", # required
4077
+ # }
4078
+ #
4079
+ # @!attribute [rw] pattern
4080
+ # A regular expression used to validate the value of a slot.
4081
+ #
4082
+ # Use a standard regular expression. Amazon Lex supports the following
4083
+ # characters in the regular expression:
4084
+ #
4085
+ # * A-Z, a-z
4086
+ #
4087
+ # * 0-9
4088
+ #
4089
+ # * Unicode characters ("\\ u&lt;Unicode&gt;")
4090
+ #
4091
+ # Represent Unicode characters with four digits, for example
4092
+ # "\\u0041" or "\\u005A".
4093
+ #
4094
+ # The following regular expression operators are not supported:
4095
+ #
4096
+ # * Infinite repeaters: *, +, or \\\{x,\\} with no upper bound.
4097
+ #
4098
+ # * Wild card (.)
4099
+ # @return [String]
4100
+ #
4101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/SlotTypeRegexConfiguration AWS API Documentation
4102
+ #
4103
+ class SlotTypeRegexConfiguration < Struct.new(
4104
+ :pattern)
4105
+ include Aws::Structure
4106
+ end
4107
+
3924
4108
  # @note When making an API call, you may pass StartImportRequest
3925
4109
  # data as a hash:
3926
4110
  #
@@ -3928,6 +4112,12 @@ module Aws::LexModelBuildingService
3928
4112
  # payload: "data", # required
3929
4113
  # resource_type: "BOT", # required, accepts BOT, INTENT, SLOT_TYPE
3930
4114
  # merge_strategy: "OVERWRITE_LATEST", # required, accepts OVERWRITE_LATEST, FAIL_ON_CONFLICT
4115
+ # tags: [
4116
+ # {
4117
+ # key: "TagKey", # required
4118
+ # value: "TagValue", # required
4119
+ # },
4120
+ # ],
3931
4121
  # }
3932
4122
  #
3933
4123
  # @!attribute [rw] payload
@@ -3961,12 +4151,19 @@ module Aws::LexModelBuildingService
3961
4151
  # file.
3962
4152
  # @return [String]
3963
4153
  #
4154
+ # @!attribute [rw] tags
4155
+ # A list of tags to add to the imported bot. You can only add tags
4156
+ # when you import a bot, you can't add tags to an intent or slot
4157
+ # type.
4158
+ # @return [Array<Types::Tag>]
4159
+ #
3964
4160
  # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartImportRequest AWS API Documentation
3965
4161
  #
3966
4162
  class StartImportRequest < Struct.new(
3967
4163
  :payload,
3968
4164
  :resource_type,
3969
- :merge_strategy)
4165
+ :merge_strategy,
4166
+ :tags)
3970
4167
  include Aws::Structure
3971
4168
  end
3972
4169
 
@@ -3991,6 +4188,10 @@ module Aws::LexModelBuildingService
3991
4188
  # the reason for the failure using the `GetImport` operation.
3992
4189
  # @return [String]
3993
4190
  #
4191
+ # @!attribute [rw] tags
4192
+ # A list of tags added to the imported bot.
4193
+ # @return [Array<Types::Tag>]
4194
+ #
3994
4195
  # @!attribute [rw] created_date
3995
4196
  # A timestamp for the date and time that the import job was requested.
3996
4197
  # @return [Time]
@@ -4003,6 +4204,7 @@ module Aws::LexModelBuildingService
4003
4204
  :merge_strategy,
4004
4205
  :import_id,
4005
4206
  :import_status,
4207
+ :tags,
4006
4208
  :created_date)
4007
4209
  include Aws::Structure
4008
4210
  end
@@ -4047,6 +4249,100 @@ module Aws::LexModelBuildingService
4047
4249
  include Aws::Structure
4048
4250
  end
4049
4251
 
4252
+ # A list of key/value pairs that identify a bot, bot alias, or bot
4253
+ # channel. Tag keys and values can consist of Unicode letters, digits,
4254
+ # white space, and any of the following symbols: \_ . : / = + - @.
4255
+ #
4256
+ # @note When making an API call, you may pass Tag
4257
+ # data as a hash:
4258
+ #
4259
+ # {
4260
+ # key: "TagKey", # required
4261
+ # value: "TagValue", # required
4262
+ # }
4263
+ #
4264
+ # @!attribute [rw] key
4265
+ # The key for the tag. Keys are not case-sensitive and must be unique.
4266
+ # @return [String]
4267
+ #
4268
+ # @!attribute [rw] value
4269
+ # The value associated with a key. The value may be an empty string
4270
+ # but it can't be null.
4271
+ # @return [String]
4272
+ #
4273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/Tag AWS API Documentation
4274
+ #
4275
+ class Tag < Struct.new(
4276
+ :key,
4277
+ :value)
4278
+ include Aws::Structure
4279
+ end
4280
+
4281
+ # @note When making an API call, you may pass TagResourceRequest
4282
+ # data as a hash:
4283
+ #
4284
+ # {
4285
+ # resource_arn: "AmazonResourceName", # required
4286
+ # tags: [ # required
4287
+ # {
4288
+ # key: "TagKey", # required
4289
+ # value: "TagValue", # required
4290
+ # },
4291
+ # ],
4292
+ # }
4293
+ #
4294
+ # @!attribute [rw] resource_arn
4295
+ # The Amazon Resource Name (ARN) of the bot, bot alias, or bot channel
4296
+ # to tag.
4297
+ # @return [String]
4298
+ #
4299
+ # @!attribute [rw] tags
4300
+ # A list of tag keys to add to the resource. If a tag key already
4301
+ # exists, the existing value is replaced with the new value.
4302
+ # @return [Array<Types::Tag>]
4303
+ #
4304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResourceRequest AWS API Documentation
4305
+ #
4306
+ class TagResourceRequest < Struct.new(
4307
+ :resource_arn,
4308
+ :tags)
4309
+ include Aws::Structure
4310
+ end
4311
+
4312
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/TagResourceResponse AWS API Documentation
4313
+ #
4314
+ class TagResourceResponse < Aws::EmptyStructure; end
4315
+
4316
+ # @note When making an API call, you may pass UntagResourceRequest
4317
+ # data as a hash:
4318
+ #
4319
+ # {
4320
+ # resource_arn: "AmazonResourceName", # required
4321
+ # tag_keys: ["TagKey"], # required
4322
+ # }
4323
+ #
4324
+ # @!attribute [rw] resource_arn
4325
+ # The Amazon Resource Name (ARN) of the resource to remove the tags
4326
+ # from.
4327
+ # @return [String]
4328
+ #
4329
+ # @!attribute [rw] tag_keys
4330
+ # A list of tag keys to remove from the resource. If a tag key does
4331
+ # not exist on the resource, it is ignored.
4332
+ # @return [Array<String>]
4333
+ #
4334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResourceRequest AWS API Documentation
4335
+ #
4336
+ class UntagResourceRequest < Struct.new(
4337
+ :resource_arn,
4338
+ :tag_keys)
4339
+ include Aws::Structure
4340
+ end
4341
+
4342
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/UntagResourceResponse AWS API Documentation
4343
+ #
4344
+ class UntagResourceResponse < Aws::EmptyStructure; end
4345
+
4050
4346
  # Provides information about a single utterance that was made to your
4051
4347
  # bot.
4052
4348
  #