aws-sdk-comprehend 1.62.0 → 1.64.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.
@@ -39,6 +39,11 @@ module Aws::Comprehend
39
39
  BatchItemError = Shapes::StructureShape.new(name: 'BatchItemError')
40
40
  BatchItemErrorList = Shapes::ListShape.new(name: 'BatchItemErrorList')
41
41
  BatchSizeLimitExceededException = Shapes::StructureShape.new(name: 'BatchSizeLimitExceededException')
42
+ Block = Shapes::StructureShape.new(name: 'Block')
43
+ BlockReference = Shapes::StructureShape.new(name: 'BlockReference')
44
+ BlockType = Shapes::StringShape.new(name: 'BlockType')
45
+ BoundingBox = Shapes::StructureShape.new(name: 'BoundingBox')
46
+ ChildBlock = Shapes::StructureShape.new(name: 'ChildBlock')
42
47
  ClassifierEvaluationMetrics = Shapes::StructureShape.new(name: 'ClassifierEvaluationMetrics')
43
48
  ClassifierMetadata = Shapes::StructureShape.new(name: 'ClassifierMetadata')
44
49
  ClassifyDocumentRequest = Shapes::StructureShape.new(name: 'ClassifyDocumentRequest')
@@ -125,10 +130,13 @@ module Aws::Comprehend
125
130
  DocumentClassifierSummariesList = Shapes::ListShape.new(name: 'DocumentClassifierSummariesList')
126
131
  DocumentClassifierSummary = Shapes::StructureShape.new(name: 'DocumentClassifierSummary')
127
132
  DocumentLabel = Shapes::StructureShape.new(name: 'DocumentLabel')
133
+ DocumentMetadata = Shapes::StructureShape.new(name: 'DocumentMetadata')
128
134
  DocumentReadAction = Shapes::StringShape.new(name: 'DocumentReadAction')
129
135
  DocumentReadFeatureTypes = Shapes::StringShape.new(name: 'DocumentReadFeatureTypes')
130
136
  DocumentReadMode = Shapes::StringShape.new(name: 'DocumentReadMode')
131
137
  DocumentReaderConfig = Shapes::StructureShape.new(name: 'DocumentReaderConfig')
138
+ DocumentType = Shapes::StringShape.new(name: 'DocumentType')
139
+ DocumentTypeListItem = Shapes::StructureShape.new(name: 'DocumentTypeListItem')
132
140
  DominantLanguage = Shapes::StructureShape.new(name: 'DominantLanguage')
133
141
  DominantLanguageDetectionJobFilter = Shapes::StructureShape.new(name: 'DominantLanguageDetectionJobFilter')
134
142
  DominantLanguageDetectionJobProperties = Shapes::StructureShape.new(name: 'DominantLanguageDetectionJobProperties')
@@ -165,11 +173,14 @@ module Aws::Comprehend
165
173
  EntityTypesEvaluationMetrics = Shapes::StructureShape.new(name: 'EntityTypesEvaluationMetrics')
166
174
  EntityTypesList = Shapes::ListShape.new(name: 'EntityTypesList')
167
175
  EntityTypesListItem = Shapes::StructureShape.new(name: 'EntityTypesListItem')
176
+ ErrorsListItem = Shapes::StructureShape.new(name: 'ErrorsListItem')
168
177
  EventTypeString = Shapes::StringShape.new(name: 'EventTypeString')
169
178
  EventsDetectionJobFilter = Shapes::StructureShape.new(name: 'EventsDetectionJobFilter')
170
179
  EventsDetectionJobProperties = Shapes::StructureShape.new(name: 'EventsDetectionJobProperties')
171
180
  EventsDetectionJobPropertiesList = Shapes::ListShape.new(name: 'EventsDetectionJobPropertiesList')
181
+ ExtractedCharactersListItem = Shapes::StructureShape.new(name: 'ExtractedCharactersListItem')
172
182
  Float = Shapes::FloatShape.new(name: 'Float')
183
+ Geometry = Shapes::StructureShape.new(name: 'Geometry')
173
184
  IamRoleArn = Shapes::StringShape.new(name: 'IamRoleArn')
174
185
  ImportModelRequest = Shapes::StructureShape.new(name: 'ImportModelRequest')
175
186
  ImportModelResponse = Shapes::StructureShape.new(name: 'ImportModelResponse')
@@ -179,7 +190,10 @@ module Aws::Comprehend
179
190
  Integer = Shapes::IntegerShape.new(name: 'Integer')
180
191
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
181
192
  InvalidFilterException = Shapes::StructureShape.new(name: 'InvalidFilterException')
193
+ InvalidRequestDetail = Shapes::StructureShape.new(name: 'InvalidRequestDetail')
194
+ InvalidRequestDetailReason = Shapes::StringShape.new(name: 'InvalidRequestDetailReason')
182
195
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
196
+ InvalidRequestReason = Shapes::StringShape.new(name: 'InvalidRequestReason')
183
197
  JobId = Shapes::StringShape.new(name: 'JobId')
184
198
  JobName = Shapes::StringShape.new(name: 'JobName')
185
199
  JobNotFoundException = Shapes::StructureShape.new(name: 'JobNotFoundException')
@@ -212,6 +226,9 @@ module Aws::Comprehend
212
226
  ListEventsDetectionJobsResponse = Shapes::StructureShape.new(name: 'ListEventsDetectionJobsResponse')
213
227
  ListKeyPhrasesDetectionJobsRequest = Shapes::StructureShape.new(name: 'ListKeyPhrasesDetectionJobsRequest')
214
228
  ListKeyPhrasesDetectionJobsResponse = Shapes::StructureShape.new(name: 'ListKeyPhrasesDetectionJobsResponse')
229
+ ListOfBlockReferences = Shapes::ListShape.new(name: 'ListOfBlockReferences')
230
+ ListOfBlocks = Shapes::ListShape.new(name: 'ListOfBlocks')
231
+ ListOfChildBlocks = Shapes::ListShape.new(name: 'ListOfChildBlocks')
215
232
  ListOfClasses = Shapes::ListShape.new(name: 'ListOfClasses')
216
233
  ListOfDescriptiveMentionIndices = Shapes::ListShape.new(name: 'ListOfDescriptiveMentionIndices')
217
234
  ListOfDetectDominantLanguageResult = Shapes::ListShape.new(name: 'ListOfDetectDominantLanguageResult')
@@ -221,14 +238,18 @@ module Aws::Comprehend
221
238
  ListOfDetectSyntaxResult = Shapes::ListShape.new(name: 'ListOfDetectSyntaxResult')
222
239
  ListOfDetectTargetedSentimentResult = Shapes::ListShape.new(name: 'ListOfDetectTargetedSentimentResult')
223
240
  ListOfDocumentReadFeatureTypes = Shapes::ListShape.new(name: 'ListOfDocumentReadFeatureTypes')
241
+ ListOfDocumentType = Shapes::ListShape.new(name: 'ListOfDocumentType')
224
242
  ListOfDominantLanguages = Shapes::ListShape.new(name: 'ListOfDominantLanguages')
225
243
  ListOfEntities = Shapes::ListShape.new(name: 'ListOfEntities')
226
244
  ListOfEntityLabels = Shapes::ListShape.new(name: 'ListOfEntityLabels')
245
+ ListOfErrors = Shapes::ListShape.new(name: 'ListOfErrors')
246
+ ListOfExtractedCharacters = Shapes::ListShape.new(name: 'ListOfExtractedCharacters')
227
247
  ListOfKeyPhrases = Shapes::ListShape.new(name: 'ListOfKeyPhrases')
228
248
  ListOfLabels = Shapes::ListShape.new(name: 'ListOfLabels')
229
249
  ListOfMentions = Shapes::ListShape.new(name: 'ListOfMentions')
230
250
  ListOfPiiEntities = Shapes::ListShape.new(name: 'ListOfPiiEntities')
231
251
  ListOfPiiEntityTypes = Shapes::ListShape.new(name: 'ListOfPiiEntityTypes')
252
+ ListOfRelationships = Shapes::ListShape.new(name: 'ListOfRelationships')
232
253
  ListOfSyntaxTokens = Shapes::ListShape.new(name: 'ListOfSyntaxTokens')
233
254
  ListOfTargetedSentimentEntities = Shapes::ListShape.new(name: 'ListOfTargetedSentimentEntities')
234
255
  ListPiiEntitiesDetectionJobsRequest = Shapes::StructureShape.new(name: 'ListPiiEntitiesDetectionJobsRequest')
@@ -247,6 +268,7 @@ module Aws::Comprehend
247
268
  ModelStatus = Shapes::StringShape.new(name: 'ModelStatus')
248
269
  NumberOfTopicsInteger = Shapes::IntegerShape.new(name: 'NumberOfTopicsInteger')
249
270
  OutputDataConfig = Shapes::StructureShape.new(name: 'OutputDataConfig')
271
+ PageBasedErrorCode = Shapes::StringShape.new(name: 'PageBasedErrorCode')
250
272
  PartOfSpeechTag = Shapes::StructureShape.new(name: 'PartOfSpeechTag')
251
273
  PartOfSpeechTagType = Shapes::StringShape.new(name: 'PartOfSpeechTagType')
252
274
  PiiEntitiesDetectionJobFilter = Shapes::StructureShape.new(name: 'PiiEntitiesDetectionJobFilter')
@@ -257,11 +279,15 @@ module Aws::Comprehend
257
279
  PiiEntity = Shapes::StructureShape.new(name: 'PiiEntity')
258
280
  PiiEntityType = Shapes::StringShape.new(name: 'PiiEntityType')
259
281
  PiiOutputDataConfig = Shapes::StructureShape.new(name: 'PiiOutputDataConfig')
282
+ Point = Shapes::StructureShape.new(name: 'Point')
260
283
  Policy = Shapes::StringShape.new(name: 'Policy')
261
284
  PolicyRevisionId = Shapes::StringShape.new(name: 'PolicyRevisionId')
285
+ Polygon = Shapes::ListShape.new(name: 'Polygon')
262
286
  PutResourcePolicyRequest = Shapes::StructureShape.new(name: 'PutResourcePolicyRequest')
263
287
  PutResourcePolicyResponse = Shapes::StructureShape.new(name: 'PutResourcePolicyResponse')
264
288
  RedactionConfig = Shapes::StructureShape.new(name: 'RedactionConfig')
289
+ RelationshipType = Shapes::StringShape.new(name: 'RelationshipType')
290
+ RelationshipsListItem = Shapes::StructureShape.new(name: 'RelationshipsListItem')
265
291
  ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
266
292
  ResourceLimitExceededException = Shapes::StructureShape.new(name: 'ResourceLimitExceededException')
267
293
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
@@ -269,6 +295,7 @@ module Aws::Comprehend
269
295
  S3Uri = Shapes::StringShape.new(name: 'S3Uri')
270
296
  SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
271
297
  SecurityGroupIds = Shapes::ListShape.new(name: 'SecurityGroupIds')
298
+ SemiStructuredDocumentBlob = Shapes::BlobShape.new(name: 'SemiStructuredDocumentBlob')
272
299
  SentimentDetectionJobFilter = Shapes::StructureShape.new(name: 'SentimentDetectionJobFilter')
273
300
  SentimentDetectionJobProperties = Shapes::StructureShape.new(name: 'SentimentDetectionJobProperties')
274
301
  SentimentDetectionJobPropertiesList = Shapes::ListShape.new(name: 'SentimentDetectionJobPropertiesList')
@@ -312,6 +339,7 @@ module Aws::Comprehend
312
339
  StopTrainingEntityRecognizerRequest = Shapes::StructureShape.new(name: 'StopTrainingEntityRecognizerRequest')
313
340
  StopTrainingEntityRecognizerResponse = Shapes::StructureShape.new(name: 'StopTrainingEntityRecognizerResponse')
314
341
  String = Shapes::StringShape.new(name: 'String')
342
+ StringList = Shapes::ListShape.new(name: 'StringList')
315
343
  SubnetId = Shapes::StringShape.new(name: 'SubnetId')
316
344
  Subnets = Shapes::ListShape.new(name: 'Subnets')
317
345
  SyntaxLanguageCode = Shapes::StringShape.new(name: 'SyntaxLanguageCode')
@@ -438,6 +466,31 @@ module Aws::Comprehend
438
466
  BatchSizeLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
439
467
  BatchSizeLimitExceededException.struct_class = Types::BatchSizeLimitExceededException
440
468
 
469
+ Block.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "Id"))
470
+ Block.add_member(:block_type, Shapes::ShapeRef.new(shape: BlockType, location_name: "BlockType"))
471
+ Block.add_member(:text, Shapes::ShapeRef.new(shape: String, location_name: "Text"))
472
+ Block.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
473
+ Block.add_member(:geometry, Shapes::ShapeRef.new(shape: Geometry, location_name: "Geometry"))
474
+ Block.add_member(:relationships, Shapes::ShapeRef.new(shape: ListOfRelationships, location_name: "Relationships"))
475
+ Block.struct_class = Types::Block
476
+
477
+ BlockReference.add_member(:block_id, Shapes::ShapeRef.new(shape: String, location_name: "BlockId"))
478
+ BlockReference.add_member(:begin_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "BeginOffset"))
479
+ BlockReference.add_member(:end_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "EndOffset"))
480
+ BlockReference.add_member(:child_blocks, Shapes::ShapeRef.new(shape: ListOfChildBlocks, location_name: "ChildBlocks"))
481
+ BlockReference.struct_class = Types::BlockReference
482
+
483
+ BoundingBox.add_member(:height, Shapes::ShapeRef.new(shape: Float, location_name: "Height"))
484
+ BoundingBox.add_member(:left, Shapes::ShapeRef.new(shape: Float, location_name: "Left"))
485
+ BoundingBox.add_member(:top, Shapes::ShapeRef.new(shape: Float, location_name: "Top"))
486
+ BoundingBox.add_member(:width, Shapes::ShapeRef.new(shape: Float, location_name: "Width"))
487
+ BoundingBox.struct_class = Types::BoundingBox
488
+
489
+ ChildBlock.add_member(:child_block_id, Shapes::ShapeRef.new(shape: String, location_name: "ChildBlockId"))
490
+ ChildBlock.add_member(:begin_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "BeginOffset"))
491
+ ChildBlock.add_member(:end_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "EndOffset"))
492
+ ChildBlock.struct_class = Types::ChildBlock
493
+
441
494
  ClassifierEvaluationMetrics.add_member(:accuracy, Shapes::ShapeRef.new(shape: Double, location_name: "Accuracy"))
442
495
  ClassifierEvaluationMetrics.add_member(:precision, Shapes::ShapeRef.new(shape: Double, location_name: "Precision"))
443
496
  ClassifierEvaluationMetrics.add_member(:recall, Shapes::ShapeRef.new(shape: Double, location_name: "Recall"))
@@ -454,12 +507,17 @@ module Aws::Comprehend
454
507
  ClassifierMetadata.add_member(:evaluation_metrics, Shapes::ShapeRef.new(shape: ClassifierEvaluationMetrics, location_name: "EvaluationMetrics"))
455
508
  ClassifierMetadata.struct_class = Types::ClassifierMetadata
456
509
 
457
- ClassifyDocumentRequest.add_member(:text, Shapes::ShapeRef.new(shape: CustomerInputString, required: true, location_name: "Text"))
510
+ ClassifyDocumentRequest.add_member(:text, Shapes::ShapeRef.new(shape: CustomerInputString, location_name: "Text"))
458
511
  ClassifyDocumentRequest.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: DocumentClassifierEndpointArn, required: true, location_name: "EndpointArn"))
512
+ ClassifyDocumentRequest.add_member(:bytes, Shapes::ShapeRef.new(shape: SemiStructuredDocumentBlob, location_name: "Bytes"))
513
+ ClassifyDocumentRequest.add_member(:document_reader_config, Shapes::ShapeRef.new(shape: DocumentReaderConfig, location_name: "DocumentReaderConfig"))
459
514
  ClassifyDocumentRequest.struct_class = Types::ClassifyDocumentRequest
460
515
 
461
516
  ClassifyDocumentResponse.add_member(:classes, Shapes::ShapeRef.new(shape: ListOfClasses, location_name: "Classes"))
462
517
  ClassifyDocumentResponse.add_member(:labels, Shapes::ShapeRef.new(shape: ListOfLabels, location_name: "Labels"))
518
+ ClassifyDocumentResponse.add_member(:document_metadata, Shapes::ShapeRef.new(shape: DocumentMetadata, location_name: "DocumentMetadata"))
519
+ ClassifyDocumentResponse.add_member(:document_type, Shapes::ShapeRef.new(shape: ListOfDocumentType, location_name: "DocumentType"))
520
+ ClassifyDocumentResponse.add_member(:errors, Shapes::ShapeRef.new(shape: ListOfErrors, location_name: "Errors"))
463
521
  ClassifyDocumentResponse.struct_class = Types::ClassifyDocumentResponse
464
522
 
465
523
  ConcurrentModificationException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
@@ -627,12 +685,18 @@ module Aws::Comprehend
627
685
  DetectDominantLanguageResponse.add_member(:languages, Shapes::ShapeRef.new(shape: ListOfDominantLanguages, location_name: "Languages"))
628
686
  DetectDominantLanguageResponse.struct_class = Types::DetectDominantLanguageResponse
629
687
 
630
- DetectEntitiesRequest.add_member(:text, Shapes::ShapeRef.new(shape: CustomerInputString, required: true, location_name: "Text"))
688
+ DetectEntitiesRequest.add_member(:text, Shapes::ShapeRef.new(shape: CustomerInputString, location_name: "Text"))
631
689
  DetectEntitiesRequest.add_member(:language_code, Shapes::ShapeRef.new(shape: LanguageCode, location_name: "LanguageCode"))
632
690
  DetectEntitiesRequest.add_member(:endpoint_arn, Shapes::ShapeRef.new(shape: EntityRecognizerEndpointArn, location_name: "EndpointArn"))
691
+ DetectEntitiesRequest.add_member(:bytes, Shapes::ShapeRef.new(shape: SemiStructuredDocumentBlob, location_name: "Bytes"))
692
+ DetectEntitiesRequest.add_member(:document_reader_config, Shapes::ShapeRef.new(shape: DocumentReaderConfig, location_name: "DocumentReaderConfig"))
633
693
  DetectEntitiesRequest.struct_class = Types::DetectEntitiesRequest
634
694
 
635
695
  DetectEntitiesResponse.add_member(:entities, Shapes::ShapeRef.new(shape: ListOfEntities, location_name: "Entities"))
696
+ DetectEntitiesResponse.add_member(:document_metadata, Shapes::ShapeRef.new(shape: DocumentMetadata, location_name: "DocumentMetadata"))
697
+ DetectEntitiesResponse.add_member(:document_type, Shapes::ShapeRef.new(shape: ListOfDocumentType, location_name: "DocumentType"))
698
+ DetectEntitiesResponse.add_member(:blocks, Shapes::ShapeRef.new(shape: ListOfBlocks, location_name: "Blocks"))
699
+ DetectEntitiesResponse.add_member(:errors, Shapes::ShapeRef.new(shape: ListOfErrors, location_name: "Errors"))
636
700
  DetectEntitiesResponse.struct_class = Types::DetectEntitiesResponse
637
701
 
638
702
  DetectKeyPhrasesRequest.add_member(:text, Shapes::ShapeRef.new(shape: CustomerInputString, required: true, location_name: "Text"))
@@ -673,6 +737,7 @@ module Aws::Comprehend
673
737
 
674
738
  DocumentClass.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
675
739
  DocumentClass.add_member(:score, Shapes::ShapeRef.new(shape: Float, location_name: "Score"))
740
+ DocumentClass.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
676
741
  DocumentClass.struct_class = Types::DocumentClass
677
742
 
678
743
  DocumentClassificationJobFilter.add_member(:job_name, Shapes::ShapeRef.new(shape: JobName, location_name: "JobName"))
@@ -750,13 +815,22 @@ module Aws::Comprehend
750
815
 
751
816
  DocumentLabel.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
752
817
  DocumentLabel.add_member(:score, Shapes::ShapeRef.new(shape: Float, location_name: "Score"))
818
+ DocumentLabel.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
753
819
  DocumentLabel.struct_class = Types::DocumentLabel
754
820
 
821
+ DocumentMetadata.add_member(:pages, Shapes::ShapeRef.new(shape: Integer, location_name: "Pages"))
822
+ DocumentMetadata.add_member(:extracted_characters, Shapes::ShapeRef.new(shape: ListOfExtractedCharacters, location_name: "ExtractedCharacters"))
823
+ DocumentMetadata.struct_class = Types::DocumentMetadata
824
+
755
825
  DocumentReaderConfig.add_member(:document_read_action, Shapes::ShapeRef.new(shape: DocumentReadAction, required: true, location_name: "DocumentReadAction"))
756
826
  DocumentReaderConfig.add_member(:document_read_mode, Shapes::ShapeRef.new(shape: DocumentReadMode, location_name: "DocumentReadMode"))
757
827
  DocumentReaderConfig.add_member(:feature_types, Shapes::ShapeRef.new(shape: ListOfDocumentReadFeatureTypes, location_name: "FeatureTypes"))
758
828
  DocumentReaderConfig.struct_class = Types::DocumentReaderConfig
759
829
 
830
+ DocumentTypeListItem.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
831
+ DocumentTypeListItem.add_member(:type, Shapes::ShapeRef.new(shape: DocumentType, location_name: "Type"))
832
+ DocumentTypeListItem.struct_class = Types::DocumentTypeListItem
833
+
760
834
  DominantLanguage.add_member(:language_code, Shapes::ShapeRef.new(shape: String, location_name: "LanguageCode"))
761
835
  DominantLanguage.add_member(:score, Shapes::ShapeRef.new(shape: Float, location_name: "Score"))
762
836
  DominantLanguage.struct_class = Types::DominantLanguage
@@ -833,6 +907,7 @@ module Aws::Comprehend
833
907
  Entity.add_member(:text, Shapes::ShapeRef.new(shape: String, location_name: "Text"))
834
908
  Entity.add_member(:begin_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "BeginOffset"))
835
909
  Entity.add_member(:end_offset, Shapes::ShapeRef.new(shape: Integer, location_name: "EndOffset"))
910
+ Entity.add_member(:block_references, Shapes::ShapeRef.new(shape: ListOfBlockReferences, location_name: "BlockReferences"))
836
911
  Entity.struct_class = Types::Entity
837
912
 
838
913
  EntityLabel.add_member(:name, Shapes::ShapeRef.new(shape: PiiEntityType, location_name: "Name"))
@@ -924,6 +999,11 @@ module Aws::Comprehend
924
999
  EntityTypesListItem.add_member(:type, Shapes::ShapeRef.new(shape: EntityTypeName, required: true, location_name: "Type"))
925
1000
  EntityTypesListItem.struct_class = Types::EntityTypesListItem
926
1001
 
1002
+ ErrorsListItem.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
1003
+ ErrorsListItem.add_member(:error_code, Shapes::ShapeRef.new(shape: PageBasedErrorCode, location_name: "ErrorCode"))
1004
+ ErrorsListItem.add_member(:error_message, Shapes::ShapeRef.new(shape: String, location_name: "ErrorMessage"))
1005
+ ErrorsListItem.struct_class = Types::ErrorsListItem
1006
+
927
1007
  EventsDetectionJobFilter.add_member(:job_name, Shapes::ShapeRef.new(shape: JobName, location_name: "JobName"))
928
1008
  EventsDetectionJobFilter.add_member(:job_status, Shapes::ShapeRef.new(shape: JobStatus, location_name: "JobStatus"))
929
1009
  EventsDetectionJobFilter.add_member(:submit_time_before, Shapes::ShapeRef.new(shape: Timestamp, location_name: "SubmitTimeBefore"))
@@ -946,6 +1026,14 @@ module Aws::Comprehend
946
1026
 
947
1027
  EventsDetectionJobPropertiesList.member = Shapes::ShapeRef.new(shape: EventsDetectionJobProperties)
948
1028
 
1029
+ ExtractedCharactersListItem.add_member(:page, Shapes::ShapeRef.new(shape: Integer, location_name: "Page"))
1030
+ ExtractedCharactersListItem.add_member(:count, Shapes::ShapeRef.new(shape: Integer, location_name: "Count"))
1031
+ ExtractedCharactersListItem.struct_class = Types::ExtractedCharactersListItem
1032
+
1033
+ Geometry.add_member(:bounding_box, Shapes::ShapeRef.new(shape: BoundingBox, location_name: "BoundingBox"))
1034
+ Geometry.add_member(:polygon, Shapes::ShapeRef.new(shape: Polygon, location_name: "Polygon"))
1035
+ Geometry.struct_class = Types::Geometry
1036
+
949
1037
  ImportModelRequest.add_member(:source_model_arn, Shapes::ShapeRef.new(shape: ComprehendModelArn, required: true, location_name: "SourceModelArn"))
950
1038
  ImportModelRequest.add_member(:model_name, Shapes::ShapeRef.new(shape: ComprehendArnName, location_name: "ModelName"))
951
1039
  ImportModelRequest.add_member(:version_name, Shapes::ShapeRef.new(shape: VersionName, location_name: "VersionName"))
@@ -968,7 +1056,12 @@ module Aws::Comprehend
968
1056
  InvalidFilterException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
969
1057
  InvalidFilterException.struct_class = Types::InvalidFilterException
970
1058
 
1059
+ InvalidRequestDetail.add_member(:reason, Shapes::ShapeRef.new(shape: InvalidRequestDetailReason, location_name: "Reason"))
1060
+ InvalidRequestDetail.struct_class = Types::InvalidRequestDetail
1061
+
971
1062
  InvalidRequestException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
1063
+ InvalidRequestException.add_member(:reason, Shapes::ShapeRef.new(shape: InvalidRequestReason, location_name: "Reason"))
1064
+ InvalidRequestException.add_member(:detail, Shapes::ShapeRef.new(shape: InvalidRequestDetail, location_name: "Detail"))
972
1065
  InvalidRequestException.struct_class = Types::InvalidRequestException
973
1066
 
974
1067
  JobNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
@@ -1094,6 +1187,12 @@ module Aws::Comprehend
1094
1187
  ListKeyPhrasesDetectionJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
1095
1188
  ListKeyPhrasesDetectionJobsResponse.struct_class = Types::ListKeyPhrasesDetectionJobsResponse
1096
1189
 
1190
+ ListOfBlockReferences.member = Shapes::ShapeRef.new(shape: BlockReference)
1191
+
1192
+ ListOfBlocks.member = Shapes::ShapeRef.new(shape: Block)
1193
+
1194
+ ListOfChildBlocks.member = Shapes::ShapeRef.new(shape: ChildBlock)
1195
+
1097
1196
  ListOfClasses.member = Shapes::ShapeRef.new(shape: DocumentClass)
1098
1197
 
1099
1198
  ListOfDescriptiveMentionIndices.member = Shapes::ShapeRef.new(shape: Integer)
@@ -1112,12 +1211,18 @@ module Aws::Comprehend
1112
1211
 
1113
1212
  ListOfDocumentReadFeatureTypes.member = Shapes::ShapeRef.new(shape: DocumentReadFeatureTypes)
1114
1213
 
1214
+ ListOfDocumentType.member = Shapes::ShapeRef.new(shape: DocumentTypeListItem)
1215
+
1115
1216
  ListOfDominantLanguages.member = Shapes::ShapeRef.new(shape: DominantLanguage)
1116
1217
 
1117
1218
  ListOfEntities.member = Shapes::ShapeRef.new(shape: Entity)
1118
1219
 
1119
1220
  ListOfEntityLabels.member = Shapes::ShapeRef.new(shape: EntityLabel)
1120
1221
 
1222
+ ListOfErrors.member = Shapes::ShapeRef.new(shape: ErrorsListItem)
1223
+
1224
+ ListOfExtractedCharacters.member = Shapes::ShapeRef.new(shape: ExtractedCharactersListItem)
1225
+
1121
1226
  ListOfKeyPhrases.member = Shapes::ShapeRef.new(shape: KeyPhrase)
1122
1227
 
1123
1228
  ListOfLabels.member = Shapes::ShapeRef.new(shape: DocumentLabel)
@@ -1128,6 +1233,8 @@ module Aws::Comprehend
1128
1233
 
1129
1234
  ListOfPiiEntityTypes.member = Shapes::ShapeRef.new(shape: PiiEntityType)
1130
1235
 
1236
+ ListOfRelationships.member = Shapes::ShapeRef.new(shape: RelationshipsListItem)
1237
+
1131
1238
  ListOfSyntaxTokens.member = Shapes::ShapeRef.new(shape: SyntaxToken)
1132
1239
 
1133
1240
  ListOfTargetedSentimentEntities.member = Shapes::ShapeRef.new(shape: TargetedSentimentEntity)
@@ -1220,6 +1327,12 @@ module Aws::Comprehend
1220
1327
  PiiOutputDataConfig.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
1221
1328
  PiiOutputDataConfig.struct_class = Types::PiiOutputDataConfig
1222
1329
 
1330
+ Point.add_member(:x, Shapes::ShapeRef.new(shape: Float, location_name: "X"))
1331
+ Point.add_member(:y, Shapes::ShapeRef.new(shape: Float, location_name: "Y"))
1332
+ Point.struct_class = Types::Point
1333
+
1334
+ Polygon.member = Shapes::ShapeRef.new(shape: Point)
1335
+
1223
1336
  PutResourcePolicyRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ComprehendModelArn, required: true, location_name: "ResourceArn"))
1224
1337
  PutResourcePolicyRequest.add_member(:resource_policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "ResourcePolicy"))
1225
1338
  PutResourcePolicyRequest.add_member(:policy_revision_id, Shapes::ShapeRef.new(shape: PolicyRevisionId, location_name: "PolicyRevisionId"))
@@ -1233,6 +1346,10 @@ module Aws::Comprehend
1233
1346
  RedactionConfig.add_member(:mask_character, Shapes::ShapeRef.new(shape: MaskCharacter, location_name: "MaskCharacter"))
1234
1347
  RedactionConfig.struct_class = Types::RedactionConfig
1235
1348
 
1349
+ RelationshipsListItem.add_member(:ids, Shapes::ShapeRef.new(shape: StringList, location_name: "Ids"))
1350
+ RelationshipsListItem.add_member(:type, Shapes::ShapeRef.new(shape: RelationshipType, location_name: "Type"))
1351
+ RelationshipsListItem.struct_class = Types::RelationshipsListItem
1352
+
1236
1353
  ResourceInUseException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
1237
1354
  ResourceInUseException.struct_class = Types::ResourceInUseException
1238
1355
 
@@ -1478,6 +1595,8 @@ module Aws::Comprehend
1478
1595
 
1479
1596
  StopTrainingEntityRecognizerResponse.struct_class = Types::StopTrainingEntityRecognizerResponse
1480
1597
 
1598
+ StringList.member = Shapes::ShapeRef.new(shape: String)
1599
+
1481
1600
  Subnets.member = Shapes::ShapeRef.new(shape: SubnetId)
1482
1601
 
1483
1602
  SyntaxToken.add_member(:token_id, Shapes::ShapeRef.new(shape: Integer, location_name: "TokenId"))
@@ -2151,6 +2270,12 @@ module Aws::Comprehend
2151
2270
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2152
2271
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2153
2272
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
2273
+ o[:pager] = Aws::Pager.new(
2274
+ limit_key: "max_results",
2275
+ tokens: {
2276
+ "next_token" => "next_token"
2277
+ }
2278
+ )
2154
2279
  end)
2155
2280
 
2156
2281
  api.add_operation(:list_entities_detection_jobs, Seahorse::Model::Operation.new.tap do |o|
@@ -2252,6 +2377,12 @@ module Aws::Comprehend
2252
2377
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
2253
2378
  o.errors << Shapes::ShapeRef.new(shape: InvalidFilterException)
2254
2379
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
2380
+ o[:pager] = Aws::Pager.new(
2381
+ limit_key: "max_results",
2382
+ tokens: {
2383
+ "next_token" => "next_token"
2384
+ }
2385
+ )
2255
2386
  end)
2256
2387
 
2257
2388
  api.add_operation(:list_sentiment_detection_jobs, Seahorse::Model::Operation.new.tap do |o|
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Comprehend
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
56
+ self[:use_dual_stack] = options[:use_dual_stack]
57
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
+ if self[:use_dual_stack].nil?
59
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
60
+ end
61
+ self[:use_fips] = options[:use_fips]
62
+ self[:use_fips] = false if self[:use_fips].nil?
63
+ if self[:use_fips].nil?
64
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
65
+ end
66
+ self[:endpoint] = options[:endpoint]
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,112 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Comprehend
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
33
+ YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
34
+ ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
35
+ aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
36
+ ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
37
+ IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
38
+ bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
39
+ aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
40
+ IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
41
+ IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
42
+ aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
43
+ Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
44
+ cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
45
+ bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
46
+ YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
47
+ bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
48
+ ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
49
+ IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
50
+ b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
51
+ ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
52
+ dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
53
+ c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfSx7ImZuIjoicGFy
54
+ c2VVUkwiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XSwiYXNzaWduIjoi
55
+ dXJsIn1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpb
56
+ eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBT
57
+ In0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZpZ3VyYXRpb246IEZJ
58
+ UFMgYW5kIGN1c3RvbSBlbmRwb2ludCBhcmUgbm90IHN1cHBvcnRlZCIsInR5
59
+ cGUiOiJlcnJvciJ9LHsiY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwi
60
+ cnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIs
61
+ ImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVdfV0sImVycm9y
62
+ IjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBEdWFsc3RhY2sgYW5kIGN1c3Rv
63
+ bSBlbmRwb2ludCBhcmUgbm90IHN1cHBvcnRlZCIsInR5cGUiOiJlcnJvciJ9
64
+ LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6eyJyZWYiOiJF
65
+ bmRwb2ludCJ9LCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBl
66
+ IjoiZW5kcG9pbnQifV19XX0seyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xl
67
+ YW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBTIn0sdHJ1ZV19LHsi
68
+ Zm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0
69
+ YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
70
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJm
71
+ biI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQi
72
+ fSwic3VwcG9ydHNGSVBTIl19XX0seyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJh
73
+ cmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBh
74
+ cnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJdfV19XSwidHlw
75
+ ZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sImVuZHBvaW50
76
+ Ijp7InVybCI6Imh0dHBzOi8vY29tcHJlaGVuZC1maXBzLntSZWdpb259LntQ
77
+ YXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRp
78
+ ZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJj
79
+ b25kaXRpb25zIjpbXSwiZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJl
80
+ IGVuYWJsZWQsIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0
81
+ IG9uZSBvciBib3RoIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMi
82
+ Olt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJ
83
+ UFMifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRp
84
+ b25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZu
85
+ IjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9
86
+ LCJzdXBwb3J0c0ZJUFMiXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
87
+ ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
88
+ aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9jb21wcmVo
89
+ ZW5kLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9
90
+ IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBv
91
+ aW50In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBpcyBl
92
+ bmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IEZJ
93
+ UFMiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJi
94
+ b29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0YWNrIn0s
95
+ dHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
96
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6Imdl
97
+ dEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwic3Vw
98
+ cG9ydHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
99
+ ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2Nv
100
+ bXByZWhlbmQue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tE
101
+ bnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
102
+ ZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkR1
103
+ YWxTdGFjayBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5v
104
+ dCBzdXBwb3J0IER1YWxTdGFjayIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25k
105
+ aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9jb21wcmVo
106
+ ZW5kLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
107
+ b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
108
+ XX1dfQ==
109
+
110
+ JSON
111
+ end
112
+ end