aws-sdk-entityresolution 1.6.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -388,6 +388,112 @@ module Aws::EntityResolution
388
388
 
389
389
  # @!group API Operations
390
390
 
391
+ # Adds a policy statement object. To retrieve a list of existing policy
392
+ # statements, use the `GetPolicy` API.
393
+ #
394
+ # @option params [required, Array<String>] :action
395
+ # The action that the principal can use on the resource.
396
+ #
397
+ # For example, `entityresolution:GetIdMappingJob`,
398
+ # `entityresolution:GetMatchingJob`.
399
+ #
400
+ # @option params [required, String] :arn
401
+ # The Amazon Resource Name (ARN) of the resource that will be accessed
402
+ # by the principal.
403
+ #
404
+ # @option params [String] :condition
405
+ # A set of condition keys that you can use in key policies.
406
+ #
407
+ # @option params [required, String] :effect
408
+ # Determines whether the permissions specified in the policy are to be
409
+ # allowed (`Allow`) or denied (`Deny`).
410
+ #
411
+ # @option params [required, Array<String>] :principal
412
+ # The Amazon Web Services service or Amazon Web Services account that
413
+ # can access the resource defined as ARN.
414
+ #
415
+ # @option params [required, String] :statement_id
416
+ # A statement identifier that differentiates the statement from others
417
+ # in the same policy.
418
+ #
419
+ # @return [Types::AddPolicyStatementOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
420
+ #
421
+ # * {Types::AddPolicyStatementOutput#arn #arn} => String
422
+ # * {Types::AddPolicyStatementOutput#policy #policy} => String
423
+ # * {Types::AddPolicyStatementOutput#token #token} => String
424
+ #
425
+ # @example Request syntax with placeholder values
426
+ #
427
+ # resp = client.add_policy_statement({
428
+ # action: ["StatementAction"], # required
429
+ # arn: "VeniceGlobalArn", # required
430
+ # condition: "StatementCondition",
431
+ # effect: "Allow", # required, accepts Allow, Deny
432
+ # principal: ["StatementPrincipal"], # required
433
+ # statement_id: "StatementId", # required
434
+ # })
435
+ #
436
+ # @example Response structure
437
+ #
438
+ # resp.arn #=> String
439
+ # resp.policy #=> String
440
+ # resp.token #=> String
441
+ #
442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/AddPolicyStatement AWS API Documentation
443
+ #
444
+ # @overload add_policy_statement(params = {})
445
+ # @param [Hash] params ({})
446
+ def add_policy_statement(params = {}, options = {})
447
+ req = build_request(:add_policy_statement, params)
448
+ req.send_request(options)
449
+ end
450
+
451
+ # Deletes multiple unique IDs in a matching workflow.
452
+ #
453
+ # @option params [String] :input_source
454
+ # The input source for the batch delete unique ID operation.
455
+ #
456
+ # @option params [required, Array<String>] :unique_ids
457
+ # The unique IDs to delete.
458
+ #
459
+ # @option params [required, String] :workflow_name
460
+ # The name of the workflow.
461
+ #
462
+ # @return [Types::BatchDeleteUniqueIdOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
463
+ #
464
+ # * {Types::BatchDeleteUniqueIdOutput#deleted #deleted} => Array&lt;Types::DeletedUniqueId&gt;
465
+ # * {Types::BatchDeleteUniqueIdOutput#disconnected_unique_ids #disconnected_unique_ids} => Array&lt;String&gt;
466
+ # * {Types::BatchDeleteUniqueIdOutput#errors #errors} => Array&lt;Types::DeleteUniqueIdError&gt;
467
+ # * {Types::BatchDeleteUniqueIdOutput#status #status} => String
468
+ #
469
+ # @example Request syntax with placeholder values
470
+ #
471
+ # resp = client.batch_delete_unique_id({
472
+ # input_source: "BatchDeleteUniqueIdInputInputSourceString",
473
+ # unique_ids: ["UniqueId"], # required
474
+ # workflow_name: "EntityName", # required
475
+ # })
476
+ #
477
+ # @example Response structure
478
+ #
479
+ # resp.deleted #=> Array
480
+ # resp.deleted[0].unique_id #=> String
481
+ # resp.disconnected_unique_ids #=> Array
482
+ # resp.disconnected_unique_ids[0] #=> String
483
+ # resp.errors #=> Array
484
+ # resp.errors[0].error_type #=> String, one of "SERVICE_ERROR", "VALIDATION_ERROR"
485
+ # resp.errors[0].unique_id #=> String
486
+ # resp.status #=> String, one of "COMPLETED", "ACCEPTED"
487
+ #
488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/BatchDeleteUniqueId AWS API Documentation
489
+ #
490
+ # @overload batch_delete_unique_id(params = {})
491
+ # @param [Hash] params ({})
492
+ def batch_delete_unique_id(params = {}, options = {})
493
+ req = build_request(:batch_delete_unique_id, params)
494
+ req.send_request(options)
495
+ end
496
+
391
497
  # Creates an `IdMappingWorkflow` object which stores the configuration
392
498
  # of the data processing job to be run. Each `IdMappingWorkflow` must
393
499
  # have a unique workflow name. To modify an existing workflow, use the
@@ -404,7 +510,7 @@ module Aws::EntityResolution
404
510
  # A list of `InputSource` objects, which have the fields
405
511
  # `InputSourceARN` and `SchemaName`.
406
512
  #
407
- # @option params [required, Array<Types::IdMappingWorkflowOutputSource>] :output_source_config
513
+ # @option params [Array<Types::IdMappingWorkflowOutputSource>] :output_source_config
408
514
  # A list of `IdMappingWorkflowOutputSource` objects, each of which
409
515
  # contains fields `OutputS3Path` and `Output`.
410
516
  #
@@ -436,7 +542,7 @@ module Aws::EntityResolution
436
542
  # description: "Description",
437
543
  # id_mapping_techniques: { # required
438
544
  # id_mapping_type: "PROVIDER", # required, accepts PROVIDER
439
- # provider_properties: { # required
545
+ # provider_properties: {
440
546
  # intermediate_source_configuration: {
441
547
  # intermediate_s3_path: "S3Path", # required
442
548
  # },
@@ -448,10 +554,11 @@ module Aws::EntityResolution
448
554
  # input_source_config: [ # required
449
555
  # {
450
556
  # input_source_arn: "IdMappingWorkflowInputSourceInputSourceARNString", # required
451
- # schema_name: "EntityName", # required
557
+ # schema_name: "EntityName",
558
+ # type: "SOURCE", # accepts SOURCE, TARGET
452
559
  # },
453
560
  # ],
454
- # output_source_config: [ # required
561
+ # output_source_config: [
455
562
  # {
456
563
  # kms_arn: "KMSArn",
457
564
  # output_s3_path: "S3Path", # required
@@ -473,6 +580,7 @@ module Aws::EntityResolution
473
580
  # resp.input_source_config #=> Array
474
581
  # resp.input_source_config[0].input_source_arn #=> String
475
582
  # resp.input_source_config[0].schema_name #=> String
583
+ # resp.input_source_config[0].type #=> String, one of "SOURCE", "TARGET"
476
584
  # resp.output_source_config #=> Array
477
585
  # resp.output_source_config[0].kms_arn #=> String
478
586
  # resp.output_source_config[0].output_s3_path #=> String
@@ -489,6 +597,110 @@ module Aws::EntityResolution
489
597
  req.send_request(options)
490
598
  end
491
599
 
600
+ # Creates an ID namespace object which will help customers provide
601
+ # metadata explaining their dataset and how to use it. Each ID namespace
602
+ # must have a unique name. To modify an existing ID namespace, use the
603
+ # `UpdateIdNamespace` API.
604
+ #
605
+ # @option params [String] :description
606
+ # The description of the ID namespace.
607
+ #
608
+ # @option params [Array<Types::IdNamespaceIdMappingWorkflowProperties>] :id_mapping_workflow_properties
609
+ # Determines the properties of `IdMappingWorflow` where this
610
+ # `IdNamespace` can be used as a `Source` or a `Target`.
611
+ #
612
+ # @option params [required, String] :id_namespace_name
613
+ # The name of the ID namespace.
614
+ #
615
+ # @option params [Array<Types::IdNamespaceInputSource>] :input_source_config
616
+ # A list of `InputSource` objects, which have the fields
617
+ # `InputSourceARN` and `SchemaName`.
618
+ #
619
+ # @option params [String] :role_arn
620
+ # The Amazon Resource Name (ARN) of the IAM role. Entity Resolution
621
+ # assumes this role to access the resources defined in this
622
+ # `IdNamespace` on your behalf as part of the workflow run.
623
+ #
624
+ # @option params [Hash<String,String>] :tags
625
+ # The tags used to organize, track, or control access for this resource.
626
+ #
627
+ # @option params [required, String] :type
628
+ # The type of ID namespace. There are two types: `SOURCE` and `TARGET`.
629
+ #
630
+ # The `SOURCE` contains configurations for `sourceId` data that will be
631
+ # processed in an ID mapping workflow.
632
+ #
633
+ # The `TARGET` contains a configuration of `targetId` to which all
634
+ # `sourceIds` will resolve to.
635
+ #
636
+ # @return [Types::CreateIdNamespaceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
637
+ #
638
+ # * {Types::CreateIdNamespaceOutput#created_at #created_at} => Time
639
+ # * {Types::CreateIdNamespaceOutput#description #description} => String
640
+ # * {Types::CreateIdNamespaceOutput#id_mapping_workflow_properties #id_mapping_workflow_properties} => Array&lt;Types::IdNamespaceIdMappingWorkflowProperties&gt;
641
+ # * {Types::CreateIdNamespaceOutput#id_namespace_arn #id_namespace_arn} => String
642
+ # * {Types::CreateIdNamespaceOutput#id_namespace_name #id_namespace_name} => String
643
+ # * {Types::CreateIdNamespaceOutput#input_source_config #input_source_config} => Array&lt;Types::IdNamespaceInputSource&gt;
644
+ # * {Types::CreateIdNamespaceOutput#role_arn #role_arn} => String
645
+ # * {Types::CreateIdNamespaceOutput#tags #tags} => Hash&lt;String,String&gt;
646
+ # * {Types::CreateIdNamespaceOutput#type #type} => String
647
+ # * {Types::CreateIdNamespaceOutput#updated_at #updated_at} => Time
648
+ #
649
+ # @example Request syntax with placeholder values
650
+ #
651
+ # resp = client.create_id_namespace({
652
+ # description: "Description",
653
+ # id_mapping_workflow_properties: [
654
+ # {
655
+ # id_mapping_type: "PROVIDER", # required, accepts PROVIDER
656
+ # provider_properties: {
657
+ # provider_configuration: {
658
+ # },
659
+ # provider_service_arn: "ProviderServiceArn", # required
660
+ # },
661
+ # },
662
+ # ],
663
+ # id_namespace_name: "EntityName", # required
664
+ # input_source_config: [
665
+ # {
666
+ # input_source_arn: "IdNamespaceInputSourceInputSourceARNString", # required
667
+ # schema_name: "EntityName",
668
+ # },
669
+ # ],
670
+ # role_arn: "RoleArn",
671
+ # tags: {
672
+ # "TagKey" => "TagValue",
673
+ # },
674
+ # type: "SOURCE", # required, accepts SOURCE, TARGET
675
+ # })
676
+ #
677
+ # @example Response structure
678
+ #
679
+ # resp.created_at #=> Time
680
+ # resp.description #=> String
681
+ # resp.id_mapping_workflow_properties #=> Array
682
+ # resp.id_mapping_workflow_properties[0].id_mapping_type #=> String, one of "PROVIDER"
683
+ # resp.id_mapping_workflow_properties[0].provider_properties.provider_service_arn #=> String
684
+ # resp.id_namespace_arn #=> String
685
+ # resp.id_namespace_name #=> String
686
+ # resp.input_source_config #=> Array
687
+ # resp.input_source_config[0].input_source_arn #=> String
688
+ # resp.input_source_config[0].schema_name #=> String
689
+ # resp.role_arn #=> String
690
+ # resp.tags #=> Hash
691
+ # resp.tags["TagKey"] #=> String
692
+ # resp.type #=> String, one of "SOURCE", "TARGET"
693
+ # resp.updated_at #=> Time
694
+ #
695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/CreateIdNamespace AWS API Documentation
696
+ #
697
+ # @overload create_id_namespace(params = {})
698
+ # @param [Hash] params ({})
699
+ def create_id_namespace(params = {}, options = {})
700
+ req = build_request(:create_id_namespace, params)
701
+ req.send_request(options)
702
+ end
703
+
492
704
  # Creates a `MatchingWorkflow` object which stores the configuration of
493
705
  # the data processing job to be run. It is important to note that there
494
706
  # should not be a pre-existing `MatchingWorkflow` with the same name. To
@@ -722,6 +934,34 @@ module Aws::EntityResolution
722
934
  req.send_request(options)
723
935
  end
724
936
 
937
+ # Deletes the `IdNamespace` with a given name.
938
+ #
939
+ # @option params [required, String] :id_namespace_name
940
+ # The name of the ID namespace.
941
+ #
942
+ # @return [Types::DeleteIdNamespaceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
943
+ #
944
+ # * {Types::DeleteIdNamespaceOutput#message #message} => String
945
+ #
946
+ # @example Request syntax with placeholder values
947
+ #
948
+ # resp = client.delete_id_namespace({
949
+ # id_namespace_name: "EntityName", # required
950
+ # })
951
+ #
952
+ # @example Response structure
953
+ #
954
+ # resp.message #=> String
955
+ #
956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/DeleteIdNamespace AWS API Documentation
957
+ #
958
+ # @overload delete_id_namespace(params = {})
959
+ # @param [Hash] params ({})
960
+ def delete_id_namespace(params = {}, options = {})
961
+ req = build_request(:delete_id_namespace, params)
962
+ req.send_request(options)
963
+ end
964
+
725
965
  # Deletes the `MatchingWorkflow` with a given name. This operation will
726
966
  # succeed even if a workflow with the given name does not exist.
727
967
  #
@@ -751,6 +991,43 @@ module Aws::EntityResolution
751
991
  req.send_request(options)
752
992
  end
753
993
 
994
+ # Deletes the policy statement.
995
+ #
996
+ # @option params [required, String] :arn
997
+ # The ARN of the resource for which the policy need to be deleted.
998
+ #
999
+ # @option params [required, String] :statement_id
1000
+ # A statement identifier that differentiates the statement from others
1001
+ # in the same policy.
1002
+ #
1003
+ # @return [Types::DeletePolicyStatementOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1004
+ #
1005
+ # * {Types::DeletePolicyStatementOutput#arn #arn} => String
1006
+ # * {Types::DeletePolicyStatementOutput#policy #policy} => String
1007
+ # * {Types::DeletePolicyStatementOutput#token #token} => String
1008
+ #
1009
+ # @example Request syntax with placeholder values
1010
+ #
1011
+ # resp = client.delete_policy_statement({
1012
+ # arn: "VeniceGlobalArn", # required
1013
+ # statement_id: "StatementId", # required
1014
+ # })
1015
+ #
1016
+ # @example Response structure
1017
+ #
1018
+ # resp.arn #=> String
1019
+ # resp.policy #=> String
1020
+ # resp.token #=> String
1021
+ #
1022
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/DeletePolicyStatement AWS API Documentation
1023
+ #
1024
+ # @overload delete_policy_statement(params = {})
1025
+ # @param [Hash] params ({})
1026
+ def delete_policy_statement(params = {}, options = {})
1027
+ req = build_request(:delete_policy_statement, params)
1028
+ req.send_request(options)
1029
+ end
1030
+
754
1031
  # Deletes the `SchemaMapping` with a given name. This operation will
755
1032
  # succeed even if a schema with the given name does not exist. This
756
1033
  # operation will fail if there is a `MatchingWorkflow` object that
@@ -797,6 +1074,7 @@ module Aws::EntityResolution
797
1074
  # * {Types::GetIdMappingJobOutput#error_details #error_details} => Types::ErrorDetails
798
1075
  # * {Types::GetIdMappingJobOutput#job_id #job_id} => String
799
1076
  # * {Types::GetIdMappingJobOutput#metrics #metrics} => Types::IdMappingJobMetrics
1077
+ # * {Types::GetIdMappingJobOutput#output_source_config #output_source_config} => Array&lt;Types::IdMappingJobOutputSource&gt;
800
1078
  # * {Types::GetIdMappingJobOutput#start_time #start_time} => Time
801
1079
  # * {Types::GetIdMappingJobOutput#status #status} => String
802
1080
  #
@@ -804,7 +1082,7 @@ module Aws::EntityResolution
804
1082
  #
805
1083
  # resp = client.get_id_mapping_job({
806
1084
  # job_id: "JobId", # required
807
- # workflow_name: "EntityName", # required
1085
+ # workflow_name: "EntityNameOrIdMappingWorkflowArn", # required
808
1086
  # })
809
1087
  #
810
1088
  # @example Response structure
@@ -815,6 +1093,10 @@ module Aws::EntityResolution
815
1093
  # resp.metrics.input_records #=> Integer
816
1094
  # resp.metrics.records_not_processed #=> Integer
817
1095
  # resp.metrics.total_records_processed #=> Integer
1096
+ # resp.output_source_config #=> Array
1097
+ # resp.output_source_config[0].kms_arn #=> String
1098
+ # resp.output_source_config[0].output_s3_path #=> String
1099
+ # resp.output_source_config[0].role_arn #=> String
818
1100
  # resp.start_time #=> Time
819
1101
  # resp.status #=> String, one of "RUNNING", "SUCCEEDED", "FAILED", "QUEUED"
820
1102
  #
@@ -861,6 +1143,7 @@ module Aws::EntityResolution
861
1143
  # resp.input_source_config #=> Array
862
1144
  # resp.input_source_config[0].input_source_arn #=> String
863
1145
  # resp.input_source_config[0].schema_name #=> String
1146
+ # resp.input_source_config[0].type #=> String, one of "SOURCE", "TARGET"
864
1147
  # resp.output_source_config #=> Array
865
1148
  # resp.output_source_config[0].kms_arn #=> String
866
1149
  # resp.output_source_config[0].output_s3_path #=> String
@@ -880,9 +1163,66 @@ module Aws::EntityResolution
880
1163
  req.send_request(options)
881
1164
  end
882
1165
 
1166
+ # Returns the `IdNamespace` with a given name, if it exists.
1167
+ #
1168
+ # @option params [required, String] :id_namespace_name
1169
+ # The name of the ID namespace.
1170
+ #
1171
+ # @return [Types::GetIdNamespaceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1172
+ #
1173
+ # * {Types::GetIdNamespaceOutput#created_at #created_at} => Time
1174
+ # * {Types::GetIdNamespaceOutput#description #description} => String
1175
+ # * {Types::GetIdNamespaceOutput#id_mapping_workflow_properties #id_mapping_workflow_properties} => Array&lt;Types::IdNamespaceIdMappingWorkflowProperties&gt;
1176
+ # * {Types::GetIdNamespaceOutput#id_namespace_arn #id_namespace_arn} => String
1177
+ # * {Types::GetIdNamespaceOutput#id_namespace_name #id_namespace_name} => String
1178
+ # * {Types::GetIdNamespaceOutput#input_source_config #input_source_config} => Array&lt;Types::IdNamespaceInputSource&gt;
1179
+ # * {Types::GetIdNamespaceOutput#role_arn #role_arn} => String
1180
+ # * {Types::GetIdNamespaceOutput#tags #tags} => Hash&lt;String,String&gt;
1181
+ # * {Types::GetIdNamespaceOutput#type #type} => String
1182
+ # * {Types::GetIdNamespaceOutput#updated_at #updated_at} => Time
1183
+ #
1184
+ # @example Request syntax with placeholder values
1185
+ #
1186
+ # resp = client.get_id_namespace({
1187
+ # id_namespace_name: "EntityNameOrIdNamespaceArn", # required
1188
+ # })
1189
+ #
1190
+ # @example Response structure
1191
+ #
1192
+ # resp.created_at #=> Time
1193
+ # resp.description #=> String
1194
+ # resp.id_mapping_workflow_properties #=> Array
1195
+ # resp.id_mapping_workflow_properties[0].id_mapping_type #=> String, one of "PROVIDER"
1196
+ # resp.id_mapping_workflow_properties[0].provider_properties.provider_service_arn #=> String
1197
+ # resp.id_namespace_arn #=> String
1198
+ # resp.id_namespace_name #=> String
1199
+ # resp.input_source_config #=> Array
1200
+ # resp.input_source_config[0].input_source_arn #=> String
1201
+ # resp.input_source_config[0].schema_name #=> String
1202
+ # resp.role_arn #=> String
1203
+ # resp.tags #=> Hash
1204
+ # resp.tags["TagKey"] #=> String
1205
+ # resp.type #=> String, one of "SOURCE", "TARGET"
1206
+ # resp.updated_at #=> Time
1207
+ #
1208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetIdNamespace AWS API Documentation
1209
+ #
1210
+ # @overload get_id_namespace(params = {})
1211
+ # @param [Hash] params ({})
1212
+ def get_id_namespace(params = {}, options = {})
1213
+ req = build_request(:get_id_namespace, params)
1214
+ req.send_request(options)
1215
+ end
1216
+
883
1217
  # Returns the corresponding Match ID of a customer record if the record
884
1218
  # has been processed.
885
1219
  #
1220
+ # @option params [Boolean] :apply_normalization
1221
+ # Normalizes the attributes defined in the schema in the input data. For
1222
+ # example, if an attribute has an `AttributeType` of `PHONE_NUMBER`, and
1223
+ # the data in the input table is in a format of 1234567890, Entity
1224
+ # Resolution will normalize this field in the output to (123)-456-7890.
1225
+ #
886
1226
  # @option params [required, Hash<String,String>] :record
887
1227
  # The record to fetch the Match ID for.
888
1228
  #
@@ -892,10 +1232,12 @@ module Aws::EntityResolution
892
1232
  # @return [Types::GetMatchIdOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
893
1233
  #
894
1234
  # * {Types::GetMatchIdOutput#match_id #match_id} => String
1235
+ # * {Types::GetMatchIdOutput#match_rule #match_rule} => String
895
1236
  #
896
1237
  # @example Request syntax with placeholder values
897
1238
  #
898
1239
  # resp = client.get_match_id({
1240
+ # apply_normalization: false,
899
1241
  # record: { # required
900
1242
  # "RecordAttributeMapKeyString" => "RecordAttributeMapValueString",
901
1243
  # },
@@ -905,6 +1247,7 @@ module Aws::EntityResolution
905
1247
  # @example Response structure
906
1248
  #
907
1249
  # resp.match_id #=> String
1250
+ # resp.match_rule #=> String
908
1251
  #
909
1252
  # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetMatchId AWS API Documentation
910
1253
  #
@@ -930,6 +1273,7 @@ module Aws::EntityResolution
930
1273
  # * {Types::GetMatchingJobOutput#error_details #error_details} => Types::ErrorDetails
931
1274
  # * {Types::GetMatchingJobOutput#job_id #job_id} => String
932
1275
  # * {Types::GetMatchingJobOutput#metrics #metrics} => Types::JobMetrics
1276
+ # * {Types::GetMatchingJobOutput#output_source_config #output_source_config} => Array&lt;Types::JobOutputSource&gt;
933
1277
  # * {Types::GetMatchingJobOutput#start_time #start_time} => Time
934
1278
  # * {Types::GetMatchingJobOutput#status #status} => String
935
1279
  #
@@ -949,6 +1293,10 @@ module Aws::EntityResolution
949
1293
  # resp.metrics.match_i_ds #=> Integer
950
1294
  # resp.metrics.records_not_processed #=> Integer
951
1295
  # resp.metrics.total_records_processed #=> Integer
1296
+ # resp.output_source_config #=> Array
1297
+ # resp.output_source_config[0].kms_arn #=> String
1298
+ # resp.output_source_config[0].output_s3_path #=> String
1299
+ # resp.output_source_config[0].role_arn #=> String
952
1300
  # resp.start_time #=> Time
953
1301
  # resp.status #=> String, one of "RUNNING", "SUCCEEDED", "FAILED", "QUEUED"
954
1302
  #
@@ -1026,6 +1374,39 @@ module Aws::EntityResolution
1026
1374
  req.send_request(options)
1027
1375
  end
1028
1376
 
1377
+ # Returns the resource-based policy.
1378
+ #
1379
+ # @option params [required, String] :arn
1380
+ # The Amazon Resource Name (ARN) of the resource for which the policy
1381
+ # need to be returned.
1382
+ #
1383
+ # @return [Types::GetPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1384
+ #
1385
+ # * {Types::GetPolicyOutput#arn #arn} => String
1386
+ # * {Types::GetPolicyOutput#policy #policy} => String
1387
+ # * {Types::GetPolicyOutput#token #token} => String
1388
+ #
1389
+ # @example Request syntax with placeholder values
1390
+ #
1391
+ # resp = client.get_policy({
1392
+ # arn: "VeniceGlobalArn", # required
1393
+ # })
1394
+ #
1395
+ # @example Response structure
1396
+ #
1397
+ # resp.arn #=> String
1398
+ # resp.policy #=> String
1399
+ # resp.token #=> String
1400
+ #
1401
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/GetPolicy AWS API Documentation
1402
+ #
1403
+ # @overload get_policy(params = {})
1404
+ # @param [Hash] params ({})
1405
+ def get_policy(params = {}, options = {})
1406
+ req = build_request(:get_policy, params)
1407
+ req.send_request(options)
1408
+ end
1409
+
1029
1410
  # Returns the `ProviderService` of a given name.
1030
1411
  #
1031
1412
  # @option params [required, String] :provider_name
@@ -1038,10 +1419,13 @@ module Aws::EntityResolution
1038
1419
  # @return [Types::GetProviderServiceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1039
1420
  #
1040
1421
  # * {Types::GetProviderServiceOutput#anonymized_output #anonymized_output} => Boolean
1422
+ # * {Types::GetProviderServiceOutput#provider_component_schema #provider_component_schema} => Types::ProviderComponentSchema
1041
1423
  # * {Types::GetProviderServiceOutput#provider_configuration_definition #provider_configuration_definition} => Hash,Array,String,Numeric,Boolean
1042
1424
  # * {Types::GetProviderServiceOutput#provider_endpoint_configuration #provider_endpoint_configuration} => Types::ProviderEndpointConfiguration
1043
1425
  # * {Types::GetProviderServiceOutput#provider_entity_output_definition #provider_entity_output_definition} => Hash,Array,String,Numeric,Boolean
1426
+ # * {Types::GetProviderServiceOutput#provider_id_name_space_configuration #provider_id_name_space_configuration} => Types::ProviderIdNameSpaceConfiguration
1044
1427
  # * {Types::GetProviderServiceOutput#provider_intermediate_data_access_configuration #provider_intermediate_data_access_configuration} => Types::ProviderIntermediateDataAccessConfiguration
1428
+ # * {Types::GetProviderServiceOutput#provider_job_configuration #provider_job_configuration} => Hash,Array,String,Numeric,Boolean
1045
1429
  # * {Types::GetProviderServiceOutput#provider_name #provider_name} => String
1046
1430
  # * {Types::GetProviderServiceOutput#provider_service_arn #provider_service_arn} => String
1047
1431
  # * {Types::GetProviderServiceOutput#provider_service_display_name #provider_service_display_name} => String
@@ -1058,10 +1442,19 @@ module Aws::EntityResolution
1058
1442
  # @example Response structure
1059
1443
  #
1060
1444
  # resp.anonymized_output #=> Boolean
1445
+ # resp.provider_component_schema.provider_schema_attributes #=> Array
1446
+ # resp.provider_component_schema.provider_schema_attributes[0].field_name #=> String
1447
+ # resp.provider_component_schema.provider_schema_attributes[0].hashing #=> Boolean
1448
+ # resp.provider_component_schema.provider_schema_attributes[0].sub_type #=> String
1449
+ # resp.provider_component_schema.provider_schema_attributes[0].type #=> String, one of "NAME", "NAME_FIRST", "NAME_MIDDLE", "NAME_LAST", "ADDRESS", "ADDRESS_STREET1", "ADDRESS_STREET2", "ADDRESS_STREET3", "ADDRESS_CITY", "ADDRESS_STATE", "ADDRESS_COUNTRY", "ADDRESS_POSTALCODE", "PHONE", "PHONE_NUMBER", "PHONE_COUNTRYCODE", "EMAIL_ADDRESS", "UNIQUE_ID", "DATE", "STRING", "PROVIDER_ID"
1450
+ # resp.provider_component_schema.schemas #=> Array
1451
+ # resp.provider_component_schema.schemas[0] #=> Array
1452
+ # resp.provider_component_schema.schemas[0][0] #=> String
1061
1453
  # resp.provider_endpoint_configuration.marketplace_configuration.asset_id #=> String
1062
1454
  # resp.provider_endpoint_configuration.marketplace_configuration.data_set_id #=> String
1063
1455
  # resp.provider_endpoint_configuration.marketplace_configuration.listing_id #=> String
1064
1456
  # resp.provider_endpoint_configuration.marketplace_configuration.revision_id #=> String
1457
+ # resp.provider_id_name_space_configuration.description #=> String
1065
1458
  # resp.provider_intermediate_data_access_configuration.aws_account_ids #=> Array
1066
1459
  # resp.provider_intermediate_data_access_configuration.aws_account_ids[0] #=> String
1067
1460
  # resp.provider_intermediate_data_access_configuration.required_bucket_actions #=> Array
@@ -1152,7 +1545,7 @@ module Aws::EntityResolution
1152
1545
  # resp = client.list_id_mapping_jobs({
1153
1546
  # max_results: 1,
1154
1547
  # next_token: "NextToken",
1155
- # workflow_name: "EntityName", # required
1548
+ # workflow_name: "EntityNameOrIdMappingWorkflowArn", # required
1156
1549
  # })
1157
1550
  #
1158
1551
  # @example Response structure
@@ -1214,6 +1607,48 @@ module Aws::EntityResolution
1214
1607
  req.send_request(options)
1215
1608
  end
1216
1609
 
1610
+ # Returns a list of all ID namespaces.
1611
+ #
1612
+ # @option params [Integer] :max_results
1613
+ # The maximum number of `IdNamespace` objects returned per page.
1614
+ #
1615
+ # @option params [String] :next_token
1616
+ # The pagination token from the previous API call.
1617
+ #
1618
+ # @return [Types::ListIdNamespacesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1619
+ #
1620
+ # * {Types::ListIdNamespacesOutput#id_namespace_summaries #id_namespace_summaries} => Array&lt;Types::IdNamespaceSummary&gt;
1621
+ # * {Types::ListIdNamespacesOutput#next_token #next_token} => String
1622
+ #
1623
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1624
+ #
1625
+ # @example Request syntax with placeholder values
1626
+ #
1627
+ # resp = client.list_id_namespaces({
1628
+ # max_results: 1,
1629
+ # next_token: "NextToken",
1630
+ # })
1631
+ #
1632
+ # @example Response structure
1633
+ #
1634
+ # resp.id_namespace_summaries #=> Array
1635
+ # resp.id_namespace_summaries[0].created_at #=> Time
1636
+ # resp.id_namespace_summaries[0].description #=> String
1637
+ # resp.id_namespace_summaries[0].id_namespace_arn #=> String
1638
+ # resp.id_namespace_summaries[0].id_namespace_name #=> String
1639
+ # resp.id_namespace_summaries[0].type #=> String, one of "SOURCE", "TARGET"
1640
+ # resp.id_namespace_summaries[0].updated_at #=> Time
1641
+ # resp.next_token #=> String
1642
+ #
1643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/ListIdNamespaces AWS API Documentation
1644
+ #
1645
+ # @overload list_id_namespaces(params = {})
1646
+ # @param [Hash] params ({})
1647
+ def list_id_namespaces(params = {}, options = {})
1648
+ req = build_request(:list_id_namespaces, params)
1649
+ req.send_request(options)
1650
+ end
1651
+
1217
1652
  # Lists all jobs for a given workflow.
1218
1653
  #
1219
1654
  # @option params [Integer] :max_results
@@ -1419,25 +1854,81 @@ module Aws::EntityResolution
1419
1854
  req.send_request(options)
1420
1855
  end
1421
1856
 
1857
+ # Updates the resource-based policy.
1858
+ #
1859
+ # @option params [required, String] :arn
1860
+ # The Amazon Resource Name (ARN) of the resource for which the policy
1861
+ # needs to be updated.
1862
+ #
1863
+ # @option params [required, String] :policy
1864
+ # The resource-based policy.
1865
+ #
1866
+ # @option params [String] :token
1867
+ # A unique identifier for the current revision of the policy.
1868
+ #
1869
+ # @return [Types::PutPolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1870
+ #
1871
+ # * {Types::PutPolicyOutput#arn #arn} => String
1872
+ # * {Types::PutPolicyOutput#policy #policy} => String
1873
+ # * {Types::PutPolicyOutput#token #token} => String
1874
+ #
1875
+ # @example Request syntax with placeholder values
1876
+ #
1877
+ # resp = client.put_policy({
1878
+ # arn: "VeniceGlobalArn", # required
1879
+ # policy: "PolicyDocument", # required
1880
+ # token: "PolicyToken",
1881
+ # })
1882
+ #
1883
+ # @example Response structure
1884
+ #
1885
+ # resp.arn #=> String
1886
+ # resp.policy #=> String
1887
+ # resp.token #=> String
1888
+ #
1889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/PutPolicy AWS API Documentation
1890
+ #
1891
+ # @overload put_policy(params = {})
1892
+ # @param [Hash] params ({})
1893
+ def put_policy(params = {}, options = {})
1894
+ req = build_request(:put_policy, params)
1895
+ req.send_request(options)
1896
+ end
1897
+
1422
1898
  # Starts the `IdMappingJob` of a workflow. The workflow must have
1423
1899
  # previously been created using the `CreateIdMappingWorkflow` endpoint.
1424
1900
  #
1901
+ # @option params [Array<Types::IdMappingJobOutputSource>] :output_source_config
1902
+ # A list of `OutputSource` objects.
1903
+ #
1425
1904
  # @option params [required, String] :workflow_name
1426
1905
  # The name of the ID mapping job to be retrieved.
1427
1906
  #
1428
1907
  # @return [Types::StartIdMappingJobOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1429
1908
  #
1430
1909
  # * {Types::StartIdMappingJobOutput#job_id #job_id} => String
1910
+ # * {Types::StartIdMappingJobOutput#output_source_config #output_source_config} => Array&lt;Types::IdMappingJobOutputSource&gt;
1431
1911
  #
1432
1912
  # @example Request syntax with placeholder values
1433
1913
  #
1434
1914
  # resp = client.start_id_mapping_job({
1435
- # workflow_name: "EntityName", # required
1915
+ # output_source_config: [
1916
+ # {
1917
+ # kms_arn: "KMSArn",
1918
+ # output_s3_path: "S3Path", # required
1919
+ # role_arn: "RoleArn", # required
1920
+ # },
1921
+ # ],
1922
+ # workflow_name: "EntityNameOrIdMappingWorkflowArn", # required
1436
1923
  # })
1437
1924
  #
1438
1925
  # @example Response structure
1439
1926
  #
1440
1927
  # resp.job_id #=> String
1928
+ # resp.output_source_config #=> Array
1929
+ # resp.output_source_config[0].kms_arn #=> String
1930
+ # resp.output_source_config[0].output_s3_path #=> String
1931
+ # resp.output_source_config[0].role_arn #=> String
1441
1932
  #
1442
1933
  # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/StartIdMappingJob AWS API Documentation
1443
1934
  #
@@ -1560,13 +2051,14 @@ module Aws::EntityResolution
1560
2051
  # A list of `InputSource` objects, which have the fields
1561
2052
  # `InputSourceARN` and `SchemaName`.
1562
2053
  #
1563
- # @option params [required, Array<Types::IdMappingWorkflowOutputSource>] :output_source_config
2054
+ # @option params [Array<Types::IdMappingWorkflowOutputSource>] :output_source_config
1564
2055
  # A list of `OutputSource` objects, each of which contains fields
1565
2056
  # `OutputS3Path` and `KMSArn`.
1566
2057
  #
1567
2058
  # @option params [required, String] :role_arn
1568
2059
  # The Amazon Resource Name (ARN) of the IAM role. Entity Resolution
1569
- # assumes this role to access resources on your behalf.
2060
+ # assumes this role to access Amazon Web Services resources on your
2061
+ # behalf.
1570
2062
  #
1571
2063
  # @option params [required, String] :workflow_name
1572
2064
  # The name of the workflow.
@@ -1587,7 +2079,7 @@ module Aws::EntityResolution
1587
2079
  # description: "Description",
1588
2080
  # id_mapping_techniques: { # required
1589
2081
  # id_mapping_type: "PROVIDER", # required, accepts PROVIDER
1590
- # provider_properties: { # required
2082
+ # provider_properties: {
1591
2083
  # intermediate_source_configuration: {
1592
2084
  # intermediate_s3_path: "S3Path", # required
1593
2085
  # },
@@ -1599,10 +2091,11 @@ module Aws::EntityResolution
1599
2091
  # input_source_config: [ # required
1600
2092
  # {
1601
2093
  # input_source_arn: "IdMappingWorkflowInputSourceInputSourceARNString", # required
1602
- # schema_name: "EntityName", # required
2094
+ # schema_name: "EntityName",
2095
+ # type: "SOURCE", # accepts SOURCE, TARGET
1603
2096
  # },
1604
2097
  # ],
1605
- # output_source_config: [ # required
2098
+ # output_source_config: [
1606
2099
  # {
1607
2100
  # kms_arn: "KMSArn",
1608
2101
  # output_s3_path: "S3Path", # required
@@ -1621,6 +2114,7 @@ module Aws::EntityResolution
1621
2114
  # resp.input_source_config #=> Array
1622
2115
  # resp.input_source_config[0].input_source_arn #=> String
1623
2116
  # resp.input_source_config[0].schema_name #=> String
2117
+ # resp.input_source_config[0].type #=> String, one of "SOURCE", "TARGET"
1624
2118
  # resp.output_source_config #=> Array
1625
2119
  # resp.output_source_config[0].kms_arn #=> String
1626
2120
  # resp.output_source_config[0].output_s3_path #=> String
@@ -1637,6 +2131,88 @@ module Aws::EntityResolution
1637
2131
  req.send_request(options)
1638
2132
  end
1639
2133
 
2134
+ # Updates an existing ID namespace.
2135
+ #
2136
+ # @option params [String] :description
2137
+ # The description of the ID namespace.
2138
+ #
2139
+ # @option params [Array<Types::IdNamespaceIdMappingWorkflowProperties>] :id_mapping_workflow_properties
2140
+ # Determines the properties of `IdMappingWorkflow` where this
2141
+ # `IdNamespace` can be used as a `Source` or a `Target`.
2142
+ #
2143
+ # @option params [required, String] :id_namespace_name
2144
+ # The name of the ID namespace.
2145
+ #
2146
+ # @option params [Array<Types::IdNamespaceInputSource>] :input_source_config
2147
+ # A list of `InputSource` objects, which have the fields
2148
+ # `InputSourceARN` and `SchemaName`.
2149
+ #
2150
+ # @option params [String] :role_arn
2151
+ # The Amazon Resource Name (ARN) of the IAM role. Entity Resolution
2152
+ # assumes this role to access the resources defined in this
2153
+ # `IdNamespace` on your behalf as part of a workflow run.
2154
+ #
2155
+ # @return [Types::UpdateIdNamespaceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2156
+ #
2157
+ # * {Types::UpdateIdNamespaceOutput#created_at #created_at} => Time
2158
+ # * {Types::UpdateIdNamespaceOutput#description #description} => String
2159
+ # * {Types::UpdateIdNamespaceOutput#id_mapping_workflow_properties #id_mapping_workflow_properties} => Array&lt;Types::IdNamespaceIdMappingWorkflowProperties&gt;
2160
+ # * {Types::UpdateIdNamespaceOutput#id_namespace_arn #id_namespace_arn} => String
2161
+ # * {Types::UpdateIdNamespaceOutput#id_namespace_name #id_namespace_name} => String
2162
+ # * {Types::UpdateIdNamespaceOutput#input_source_config #input_source_config} => Array&lt;Types::IdNamespaceInputSource&gt;
2163
+ # * {Types::UpdateIdNamespaceOutput#role_arn #role_arn} => String
2164
+ # * {Types::UpdateIdNamespaceOutput#type #type} => String
2165
+ # * {Types::UpdateIdNamespaceOutput#updated_at #updated_at} => Time
2166
+ #
2167
+ # @example Request syntax with placeholder values
2168
+ #
2169
+ # resp = client.update_id_namespace({
2170
+ # description: "Description",
2171
+ # id_mapping_workflow_properties: [
2172
+ # {
2173
+ # id_mapping_type: "PROVIDER", # required, accepts PROVIDER
2174
+ # provider_properties: {
2175
+ # provider_configuration: {
2176
+ # },
2177
+ # provider_service_arn: "ProviderServiceArn", # required
2178
+ # },
2179
+ # },
2180
+ # ],
2181
+ # id_namespace_name: "EntityName", # required
2182
+ # input_source_config: [
2183
+ # {
2184
+ # input_source_arn: "IdNamespaceInputSourceInputSourceARNString", # required
2185
+ # schema_name: "EntityName",
2186
+ # },
2187
+ # ],
2188
+ # role_arn: "RoleArn",
2189
+ # })
2190
+ #
2191
+ # @example Response structure
2192
+ #
2193
+ # resp.created_at #=> Time
2194
+ # resp.description #=> String
2195
+ # resp.id_mapping_workflow_properties #=> Array
2196
+ # resp.id_mapping_workflow_properties[0].id_mapping_type #=> String, one of "PROVIDER"
2197
+ # resp.id_mapping_workflow_properties[0].provider_properties.provider_service_arn #=> String
2198
+ # resp.id_namespace_arn #=> String
2199
+ # resp.id_namespace_name #=> String
2200
+ # resp.input_source_config #=> Array
2201
+ # resp.input_source_config[0].input_source_arn #=> String
2202
+ # resp.input_source_config[0].schema_name #=> String
2203
+ # resp.role_arn #=> String
2204
+ # resp.type #=> String, one of "SOURCE", "TARGET"
2205
+ # resp.updated_at #=> Time
2206
+ #
2207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/entityresolution-2018-05-10/UpdateIdNamespace AWS API Documentation
2208
+ #
2209
+ # @overload update_id_namespace(params = {})
2210
+ # @param [Hash] params ({})
2211
+ def update_id_namespace(params = {}, options = {})
2212
+ req = build_request(:update_id_namespace, params)
2213
+ req.send_request(options)
2214
+ end
2215
+
1640
2216
  # Updates an existing `MatchingWorkflow`. This method is identical to
1641
2217
  # `CreateMatchingWorkflow`, except it uses an HTTP `PUT` request instead
1642
2218
  # of a `POST` request, and the `MatchingWorkflow` must already exist for
@@ -1842,7 +2418,7 @@ module Aws::EntityResolution
1842
2418
  params: params,
1843
2419
  config: config)
1844
2420
  context[:gem_name] = 'aws-sdk-entityresolution'
1845
- context[:gem_version] = '1.6.0'
2421
+ context[:gem_version] = '1.8.0'
1846
2422
  Seahorse::Client::Request.new(handlers, context)
1847
2423
  end
1848
2424