aws-sdk-detective 1.28.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 79a5f4f00d149cc1f953ac28dfbb0a13caa38913c53127a1da71fe5f3bf7cd55
4
- data.tar.gz: 1f48682045c8fdef99a46506cf04304d78aa601233512944f2fc502c0c4ac1e2
3
+ metadata.gz: 3e38217f8159d7ed5b730c63aff4edb75fe12f964ef74c45570a1dc3dd0a5c2e
4
+ data.tar.gz: 983e4d26ac6435ec9b6b291ce633790005d3b82d83e5db5066759e2bcdac0959
5
5
  SHA512:
6
- metadata.gz: f02d549f098fc19cde60852974a85f2fbc33c78f6629fde57ed65fb6a1a53fd55119f1d84667dfdc9f394d7f069831e8574fcba1432ce3253356ebe3d57048fb
7
- data.tar.gz: 9c0cb970aa82cf370cd727d15a9105e251370bcc7aab2c2c767eb609dcdeb802b5e836c54c4c06c07f1f2bc32617658617ff1f5f4051beb43f4df3db6d65f605
6
+ metadata.gz: 3f2a6a507ec394336f758b8136e17d09aad68b5364fafd6b1647fa965cfdeac79761d005417d04bb1df6d5795dd84f4515c9352cf26a405093b34f8b6b6a297b
7
+ data.tar.gz: 7a27f810270dbaa54bf376c130ace09e6c6526227599c4987a6bad6b1f6656a12846434331a06e4faaccebe0d4d7070a6ca36a5841cb5ba71c605079263c4d36
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.29.0 (2022-07-26)
5
+ ------------------
6
+
7
+ * Feature - Added the ability to get data source package information for the behavior graph. Graph administrators can now start (or stop) optional datasources on the behavior graph.
8
+
4
9
  1.28.0 (2022-02-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.28.0
1
+ 1.29.0
@@ -382,6 +382,85 @@ module Aws::Detective
382
382
  req.send_request(options)
383
383
  end
384
384
 
385
+ # Gets data source package information for the behavior graph.
386
+ #
387
+ # @option params [required, String] :graph_arn
388
+ # The ARN of the behavior graph.
389
+ #
390
+ # @option params [required, Array<String>] :account_ids
391
+ # The list of Amazon Web Services accounts to get data source package
392
+ # information on.
393
+ #
394
+ # @return [Types::BatchGetGraphMemberDatasourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
395
+ #
396
+ # * {Types::BatchGetGraphMemberDatasourcesResponse#member_datasources #member_datasources} => Array&lt;Types::MembershipDatasources&gt;
397
+ # * {Types::BatchGetGraphMemberDatasourcesResponse#unprocessed_accounts #unprocessed_accounts} => Array&lt;Types::UnprocessedAccount&gt;
398
+ #
399
+ # @example Request syntax with placeholder values
400
+ #
401
+ # resp = client.batch_get_graph_member_datasources({
402
+ # graph_arn: "GraphArn", # required
403
+ # account_ids: ["AccountId"], # required
404
+ # })
405
+ #
406
+ # @example Response structure
407
+ #
408
+ # resp.member_datasources #=> Array
409
+ # resp.member_datasources[0].account_id #=> String
410
+ # resp.member_datasources[0].graph_arn #=> String
411
+ # resp.member_datasources[0].datasource_package_ingest_history #=> Hash
412
+ # resp.member_datasources[0].datasource_package_ingest_history["DatasourcePackage"] #=> Hash
413
+ # resp.member_datasources[0].datasource_package_ingest_history["DatasourcePackage"]["DatasourcePackageIngestState"].timestamp #=> Time
414
+ # resp.unprocessed_accounts #=> Array
415
+ # resp.unprocessed_accounts[0].account_id #=> String
416
+ # resp.unprocessed_accounts[0].reason #=> String
417
+ #
418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetGraphMemberDatasources AWS API Documentation
419
+ #
420
+ # @overload batch_get_graph_member_datasources(params = {})
421
+ # @param [Hash] params ({})
422
+ def batch_get_graph_member_datasources(params = {}, options = {})
423
+ req = build_request(:batch_get_graph_member_datasources, params)
424
+ req.send_request(options)
425
+ end
426
+
427
+ # Gets information on the data source package history for an account.
428
+ #
429
+ # @option params [required, Array<String>] :graph_arns
430
+ # The ARN of the behavior graph.
431
+ #
432
+ # @return [Types::BatchGetMembershipDatasourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
433
+ #
434
+ # * {Types::BatchGetMembershipDatasourcesResponse#membership_datasources #membership_datasources} => Array&lt;Types::MembershipDatasources&gt;
435
+ # * {Types::BatchGetMembershipDatasourcesResponse#unprocessed_graphs #unprocessed_graphs} => Array&lt;Types::UnprocessedGraph&gt;
436
+ #
437
+ # @example Request syntax with placeholder values
438
+ #
439
+ # resp = client.batch_get_membership_datasources({
440
+ # graph_arns: ["GraphArn"], # required
441
+ # })
442
+ #
443
+ # @example Response structure
444
+ #
445
+ # resp.membership_datasources #=> Array
446
+ # resp.membership_datasources[0].account_id #=> String
447
+ # resp.membership_datasources[0].graph_arn #=> String
448
+ # resp.membership_datasources[0].datasource_package_ingest_history #=> Hash
449
+ # resp.membership_datasources[0].datasource_package_ingest_history["DatasourcePackage"] #=> Hash
450
+ # resp.membership_datasources[0].datasource_package_ingest_history["DatasourcePackage"]["DatasourcePackageIngestState"].timestamp #=> Time
451
+ # resp.unprocessed_graphs #=> Array
452
+ # resp.unprocessed_graphs[0].graph_arn #=> String
453
+ # resp.unprocessed_graphs[0].reason #=> String
454
+ #
455
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetMembershipDatasources AWS API Documentation
456
+ #
457
+ # @overload batch_get_membership_datasources(params = {})
458
+ # @param [Hash] params ({})
459
+ def batch_get_membership_datasources(params = {}, options = {})
460
+ req = build_request(:batch_get_membership_datasources, params)
461
+ req.send_request(options)
462
+ end
463
+
385
464
  # Creates a new behavior graph for the calling account, and sets that
386
465
  # account as the administrator account. This operation is called by the
387
466
  # account that is enabling Detective.
@@ -529,6 +608,11 @@ module Aws::Detective
529
608
  # resp.members[0].percent_of_graph_utilization #=> Float
530
609
  # resp.members[0].percent_of_graph_utilization_updated_time #=> Time
531
610
  # resp.members[0].invitation_type #=> String, one of "INVITATION", "ORGANIZATION"
611
+ # resp.members[0].volume_usage_by_datasource_package #=> Hash
612
+ # resp.members[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_in_bytes #=> Integer
613
+ # resp.members[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_update_time #=> Time
614
+ # resp.members[0].datasource_package_ingest_states #=> Hash
615
+ # resp.members[0].datasource_package_ingest_states["DatasourcePackage"] #=> String, one of "STARTED", "STOPPED", "DISABLED"
532
616
  # resp.unprocessed_accounts #=> Array
533
617
  # resp.unprocessed_accounts[0].account_id #=> String
534
618
  # resp.unprocessed_accounts[0].reason #=> String
@@ -658,12 +742,19 @@ module Aws::Detective
658
742
  req.send_request(options)
659
743
  end
660
744
 
661
- # Removes the Detective administrator account for the organization in
662
- # the current Region. Deletes the behavior graph for that account.
745
+ # Removes the Detective administrator account in the current Region.
746
+ # Deletes the organization behavior graph.
663
747
  #
664
- # Can only be called by the organization management account. Before you
665
- # can select a different Detective administrator account, you must
666
- # remove the Detective administrator account in all Regions.
748
+ # Can only be called by the organization management account.
749
+ #
750
+ # Removing the Detective administrator account does not affect the
751
+ # delegated administrator account for Detective in Organizations.
752
+ #
753
+ # To remove the delegated administrator account in Organizations, use
754
+ # the Organizations API. Removing the delegated administrator account
755
+ # also removes the Detective administrator account in all Regions,
756
+ # except for Regions where the Detective administrator account is the
757
+ # organization management account.
667
758
  #
668
759
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
669
760
  #
@@ -716,10 +807,17 @@ module Aws::Detective
716
807
  #
717
808
  # Can only be called by the organization management account.
718
809
  #
719
- # The Detective administrator account for an organization must be the
720
- # same in all Regions. If you already designated a Detective
721
- # administrator account in another Region, then you must designate the
722
- # same account.
810
+ # If the organization has a delegated administrator account in
811
+ # Organizations, then the Detective administrator account must be either
812
+ # the delegated administrator account or the organization management
813
+ # account.
814
+ #
815
+ # If the organization does not have a delegated administrator account in
816
+ # Organizations, then you can choose any account in the organization. If
817
+ # you choose an account other than the organization management account,
818
+ # Detective calls Organizations to make that account the delegated
819
+ # administrator account for Detective. The organization management
820
+ # account cannot be the delegated administrator account.
723
821
  #
724
822
  # @option params [required, String] :account_id
725
823
  # The Amazon Web Services account identifier of the account to designate
@@ -785,6 +883,11 @@ module Aws::Detective
785
883
  # resp.member_details[0].percent_of_graph_utilization #=> Float
786
884
  # resp.member_details[0].percent_of_graph_utilization_updated_time #=> Time
787
885
  # resp.member_details[0].invitation_type #=> String, one of "INVITATION", "ORGANIZATION"
886
+ # resp.member_details[0].volume_usage_by_datasource_package #=> Hash
887
+ # resp.member_details[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_in_bytes #=> Integer
888
+ # resp.member_details[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_update_time #=> Time
889
+ # resp.member_details[0].datasource_package_ingest_states #=> Hash
890
+ # resp.member_details[0].datasource_package_ingest_states["DatasourcePackage"] #=> String, one of "STARTED", "STOPPED", "DISABLED"
788
891
  # resp.unprocessed_accounts #=> Array
789
892
  # resp.unprocessed_accounts[0].account_id #=> String
790
893
  # resp.unprocessed_accounts[0].reason #=> String
@@ -798,6 +901,51 @@ module Aws::Detective
798
901
  req.send_request(options)
799
902
  end
800
903
 
904
+ # Lists data source packages in the behavior graph.
905
+ #
906
+ # @option params [required, String] :graph_arn
907
+ # The ARN of the behavior graph.
908
+ #
909
+ # @option params [String] :next_token
910
+ # For requests to get the next page of results, the pagination token
911
+ # that was returned with the previous set of results. The initial
912
+ # request does not include a pagination token.
913
+ #
914
+ # @option params [Integer] :max_results
915
+ # The maximum number of results to return.
916
+ #
917
+ # @return [Types::ListDatasourcePackagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
918
+ #
919
+ # * {Types::ListDatasourcePackagesResponse#datasource_packages #datasource_packages} => Hash&lt;String,Types::DatasourcePackageIngestDetail&gt;
920
+ # * {Types::ListDatasourcePackagesResponse#next_token #next_token} => String
921
+ #
922
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
923
+ #
924
+ # @example Request syntax with placeholder values
925
+ #
926
+ # resp = client.list_datasource_packages({
927
+ # graph_arn: "GraphArn", # required
928
+ # next_token: "PaginationToken",
929
+ # max_results: 1,
930
+ # })
931
+ #
932
+ # @example Response structure
933
+ #
934
+ # resp.datasource_packages #=> Hash
935
+ # resp.datasource_packages["DatasourcePackage"].datasource_package_ingest_state #=> String, one of "STARTED", "STOPPED", "DISABLED"
936
+ # resp.datasource_packages["DatasourcePackage"].last_ingest_state_change #=> Hash
937
+ # resp.datasource_packages["DatasourcePackage"].last_ingest_state_change["DatasourcePackageIngestState"].timestamp #=> Time
938
+ # resp.next_token #=> String
939
+ #
940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListDatasourcePackages AWS API Documentation
941
+ #
942
+ # @overload list_datasource_packages(params = {})
943
+ # @param [Hash] params ({})
944
+ def list_datasource_packages(params = {}, options = {})
945
+ req = build_request(:list_datasource_packages, params)
946
+ req.send_request(options)
947
+ end
948
+
801
949
  # Returns the list of behavior graphs that the calling account is an
802
950
  # administrator account of. This operation can only be called by an
803
951
  # administrator account.
@@ -899,6 +1047,11 @@ module Aws::Detective
899
1047
  # resp.invitations[0].percent_of_graph_utilization #=> Float
900
1048
  # resp.invitations[0].percent_of_graph_utilization_updated_time #=> Time
901
1049
  # resp.invitations[0].invitation_type #=> String, one of "INVITATION", "ORGANIZATION"
1050
+ # resp.invitations[0].volume_usage_by_datasource_package #=> Hash
1051
+ # resp.invitations[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_in_bytes #=> Integer
1052
+ # resp.invitations[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_update_time #=> Time
1053
+ # resp.invitations[0].datasource_package_ingest_states #=> Hash
1054
+ # resp.invitations[0].datasource_package_ingest_states["DatasourcePackage"] #=> String, one of "STARTED", "STOPPED", "DISABLED"
902
1055
  # resp.next_token #=> String
903
1056
  #
904
1057
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListInvitations AWS API Documentation
@@ -965,6 +1118,11 @@ module Aws::Detective
965
1118
  # resp.member_details[0].percent_of_graph_utilization #=> Float
966
1119
  # resp.member_details[0].percent_of_graph_utilization_updated_time #=> Time
967
1120
  # resp.member_details[0].invitation_type #=> String, one of "INVITATION", "ORGANIZATION"
1121
+ # resp.member_details[0].volume_usage_by_datasource_package #=> Hash
1122
+ # resp.member_details[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_in_bytes #=> Integer
1123
+ # resp.member_details[0].volume_usage_by_datasource_package["DatasourcePackage"].volume_usage_update_time #=> Time
1124
+ # resp.member_details[0].datasource_package_ingest_states #=> Hash
1125
+ # resp.member_details[0].datasource_package_ingest_states["DatasourcePackage"] #=> String, one of "STARTED", "STOPPED", "DISABLED"
968
1126
  # resp.next_token #=> String
969
1127
  #
970
1128
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListMembers AWS API Documentation
@@ -1175,6 +1333,32 @@ module Aws::Detective
1175
1333
  req.send_request(options)
1176
1334
  end
1177
1335
 
1336
+ # Starts a data source packages for the behavior graph.
1337
+ #
1338
+ # @option params [required, String] :graph_arn
1339
+ # The ARN of the behavior graph.
1340
+ #
1341
+ # @option params [required, Array<String>] :datasource_packages
1342
+ # The data source package start for the behavior graph.
1343
+ #
1344
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1345
+ #
1346
+ # @example Request syntax with placeholder values
1347
+ #
1348
+ # resp = client.update_datasource_packages({
1349
+ # graph_arn: "GraphArn", # required
1350
+ # datasource_packages: ["DETECTIVE_CORE"], # required, accepts DETECTIVE_CORE, EKS_AUDIT
1351
+ # })
1352
+ #
1353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/UpdateDatasourcePackages AWS API Documentation
1354
+ #
1355
+ # @overload update_datasource_packages(params = {})
1356
+ # @param [Hash] params ({})
1357
+ def update_datasource_packages(params = {}, options = {})
1358
+ req = build_request(:update_datasource_packages, params)
1359
+ req.send_request(options)
1360
+ end
1361
+
1178
1362
  # Updates the configuration for the Organizations integration in the
1179
1363
  # current Region. Can only be called by the Detective administrator
1180
1364
  # account for the organization.
@@ -1217,7 +1401,7 @@ module Aws::Detective
1217
1401
  params: params,
1218
1402
  config: config)
1219
1403
  context[:gem_name] = 'aws-sdk-detective'
1220
- context[:gem_version] = '1.28.0'
1404
+ context[:gem_version] = '1.29.0'
1221
1405
  Seahorse::Client::Request.new(handlers, context)
1222
1406
  end
1223
1407
 
@@ -16,10 +16,15 @@ module Aws::Detective
16
16
  AcceptInvitationRequest = Shapes::StructureShape.new(name: 'AcceptInvitationRequest')
17
17
  Account = Shapes::StructureShape.new(name: 'Account')
18
18
  AccountId = Shapes::StringShape.new(name: 'AccountId')
19
+ AccountIdExtendedList = Shapes::ListShape.new(name: 'AccountIdExtendedList')
19
20
  AccountIdList = Shapes::ListShape.new(name: 'AccountIdList')
20
21
  AccountList = Shapes::ListShape.new(name: 'AccountList')
21
22
  Administrator = Shapes::StructureShape.new(name: 'Administrator')
22
23
  AdministratorList = Shapes::ListShape.new(name: 'AdministratorList')
24
+ BatchGetGraphMemberDatasourcesRequest = Shapes::StructureShape.new(name: 'BatchGetGraphMemberDatasourcesRequest')
25
+ BatchGetGraphMemberDatasourcesResponse = Shapes::StructureShape.new(name: 'BatchGetGraphMemberDatasourcesResponse')
26
+ BatchGetMembershipDatasourcesRequest = Shapes::StructureShape.new(name: 'BatchGetMembershipDatasourcesRequest')
27
+ BatchGetMembershipDatasourcesResponse = Shapes::StructureShape.new(name: 'BatchGetMembershipDatasourcesResponse')
23
28
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
24
29
  ByteValue = Shapes::IntegerShape.new(name: 'ByteValue')
25
30
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
@@ -27,6 +32,14 @@ module Aws::Detective
27
32
  CreateGraphResponse = Shapes::StructureShape.new(name: 'CreateGraphResponse')
28
33
  CreateMembersRequest = Shapes::StructureShape.new(name: 'CreateMembersRequest')
29
34
  CreateMembersResponse = Shapes::StructureShape.new(name: 'CreateMembersResponse')
35
+ DatasourcePackage = Shapes::StringShape.new(name: 'DatasourcePackage')
36
+ DatasourcePackageIngestDetail = Shapes::StructureShape.new(name: 'DatasourcePackageIngestDetail')
37
+ DatasourcePackageIngestDetails = Shapes::MapShape.new(name: 'DatasourcePackageIngestDetails')
38
+ DatasourcePackageIngestHistory = Shapes::MapShape.new(name: 'DatasourcePackageIngestHistory')
39
+ DatasourcePackageIngestState = Shapes::StringShape.new(name: 'DatasourcePackageIngestState')
40
+ DatasourcePackageIngestStates = Shapes::MapShape.new(name: 'DatasourcePackageIngestStates')
41
+ DatasourcePackageList = Shapes::ListShape.new(name: 'DatasourcePackageList')
42
+ DatasourcePackageUsageInfo = Shapes::StructureShape.new(name: 'DatasourcePackageUsageInfo')
30
43
  DeleteGraphRequest = Shapes::StructureShape.new(name: 'DeleteGraphRequest')
31
44
  DeleteMembersRequest = Shapes::StructureShape.new(name: 'DeleteMembersRequest')
32
45
  DeleteMembersResponse = Shapes::StructureShape.new(name: 'DeleteMembersResponse')
@@ -36,14 +49,20 @@ module Aws::Detective
36
49
  EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
37
50
  EmailMessage = Shapes::StringShape.new(name: 'EmailMessage')
38
51
  EnableOrganizationAdminAccountRequest = Shapes::StructureShape.new(name: 'EnableOrganizationAdminAccountRequest')
52
+ ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
53
+ ErrorCodeReason = Shapes::StringShape.new(name: 'ErrorCodeReason')
39
54
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
40
55
  GetMembersRequest = Shapes::StructureShape.new(name: 'GetMembersRequest')
41
56
  GetMembersResponse = Shapes::StructureShape.new(name: 'GetMembersResponse')
42
57
  Graph = Shapes::StructureShape.new(name: 'Graph')
43
58
  GraphArn = Shapes::StringShape.new(name: 'GraphArn')
59
+ GraphArnList = Shapes::ListShape.new(name: 'GraphArnList')
44
60
  GraphList = Shapes::ListShape.new(name: 'GraphList')
45
61
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
46
62
  InvitationType = Shapes::StringShape.new(name: 'InvitationType')
63
+ LastIngestStateChangeDates = Shapes::MapShape.new(name: 'LastIngestStateChangeDates')
64
+ ListDatasourcePackagesRequest = Shapes::StructureShape.new(name: 'ListDatasourcePackagesRequest')
65
+ ListDatasourcePackagesResponse = Shapes::StructureShape.new(name: 'ListDatasourcePackagesResponse')
47
66
  ListGraphsRequest = Shapes::StructureShape.new(name: 'ListGraphsRequest')
48
67
  ListGraphsResponse = Shapes::StructureShape.new(name: 'ListGraphsResponse')
49
68
  ListInvitationsRequest = Shapes::StructureShape.new(name: 'ListInvitationsRequest')
@@ -59,9 +78,13 @@ module Aws::Detective
59
78
  MemberDisabledReason = Shapes::StringShape.new(name: 'MemberDisabledReason')
60
79
  MemberResultsLimit = Shapes::IntegerShape.new(name: 'MemberResultsLimit')
61
80
  MemberStatus = Shapes::StringShape.new(name: 'MemberStatus')
81
+ MembershipDatasources = Shapes::StructureShape.new(name: 'MembershipDatasources')
82
+ MembershipDatasourcesList = Shapes::ListShape.new(name: 'MembershipDatasourcesList')
62
83
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
63
84
  Percentage = Shapes::FloatShape.new(name: 'Percentage')
64
85
  RejectInvitationRequest = Shapes::StructureShape.new(name: 'RejectInvitationRequest')
86
+ Resource = Shapes::StringShape.new(name: 'Resource')
87
+ ResourceList = Shapes::ListShape.new(name: 'ResourceList')
65
88
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
66
89
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
67
90
  StartMonitoringMemberRequest = Shapes::StructureShape.new(name: 'StartMonitoringMemberRequest')
@@ -72,14 +95,19 @@ module Aws::Detective
72
95
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
73
96
  TagValue = Shapes::StringShape.new(name: 'TagValue')
74
97
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp', timestampFormat: "iso8601")
98
+ TimestampForCollection = Shapes::StructureShape.new(name: 'TimestampForCollection')
75
99
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
76
100
  UnprocessedAccount = Shapes::StructureShape.new(name: 'UnprocessedAccount')
77
101
  UnprocessedAccountList = Shapes::ListShape.new(name: 'UnprocessedAccountList')
102
+ UnprocessedGraph = Shapes::StructureShape.new(name: 'UnprocessedGraph')
103
+ UnprocessedGraphList = Shapes::ListShape.new(name: 'UnprocessedGraphList')
78
104
  UnprocessedReason = Shapes::StringShape.new(name: 'UnprocessedReason')
79
105
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
80
106
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
107
+ UpdateDatasourcePackagesRequest = Shapes::StructureShape.new(name: 'UpdateDatasourcePackagesRequest')
81
108
  UpdateOrganizationConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationRequest')
82
109
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
110
+ VolumeUsageByDatasourcePackage = Shapes::MapShape.new(name: 'VolumeUsageByDatasourcePackage')
83
111
 
84
112
  AcceptInvitationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
85
113
  AcceptInvitationRequest.struct_class = Types::AcceptInvitationRequest
@@ -88,6 +116,8 @@ module Aws::Detective
88
116
  Account.add_member(:email_address, Shapes::ShapeRef.new(shape: EmailAddress, required: true, location_name: "EmailAddress"))
89
117
  Account.struct_class = Types::Account
90
118
 
119
+ AccountIdExtendedList.member = Shapes::ShapeRef.new(shape: AccountId)
120
+
91
121
  AccountIdList.member = Shapes::ShapeRef.new(shape: AccountId)
92
122
 
93
123
  AccountList.member = Shapes::ShapeRef.new(shape: Account)
@@ -99,6 +129,21 @@ module Aws::Detective
99
129
 
100
130
  AdministratorList.member = Shapes::ShapeRef.new(shape: Administrator)
101
131
 
132
+ BatchGetGraphMemberDatasourcesRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
133
+ BatchGetGraphMemberDatasourcesRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIdExtendedList, required: true, location_name: "AccountIds"))
134
+ BatchGetGraphMemberDatasourcesRequest.struct_class = Types::BatchGetGraphMemberDatasourcesRequest
135
+
136
+ BatchGetGraphMemberDatasourcesResponse.add_member(:member_datasources, Shapes::ShapeRef.new(shape: MembershipDatasourcesList, location_name: "MemberDatasources"))
137
+ BatchGetGraphMemberDatasourcesResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccountList, location_name: "UnprocessedAccounts"))
138
+ BatchGetGraphMemberDatasourcesResponse.struct_class = Types::BatchGetGraphMemberDatasourcesResponse
139
+
140
+ BatchGetMembershipDatasourcesRequest.add_member(:graph_arns, Shapes::ShapeRef.new(shape: GraphArnList, required: true, location_name: "GraphArns"))
141
+ BatchGetMembershipDatasourcesRequest.struct_class = Types::BatchGetMembershipDatasourcesRequest
142
+
143
+ BatchGetMembershipDatasourcesResponse.add_member(:membership_datasources, Shapes::ShapeRef.new(shape: MembershipDatasourcesList, location_name: "MembershipDatasources"))
144
+ BatchGetMembershipDatasourcesResponse.add_member(:unprocessed_graphs, Shapes::ShapeRef.new(shape: UnprocessedGraphList, location_name: "UnprocessedGraphs"))
145
+ BatchGetMembershipDatasourcesResponse.struct_class = Types::BatchGetMembershipDatasourcesResponse
146
+
102
147
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
103
148
  ConflictException.struct_class = Types::ConflictException
104
149
 
@@ -118,6 +163,25 @@ module Aws::Detective
118
163
  CreateMembersResponse.add_member(:unprocessed_accounts, Shapes::ShapeRef.new(shape: UnprocessedAccountList, location_name: "UnprocessedAccounts"))
119
164
  CreateMembersResponse.struct_class = Types::CreateMembersResponse
120
165
 
166
+ DatasourcePackageIngestDetail.add_member(:datasource_package_ingest_state, Shapes::ShapeRef.new(shape: DatasourcePackageIngestState, location_name: "DatasourcePackageIngestState"))
167
+ DatasourcePackageIngestDetail.add_member(:last_ingest_state_change, Shapes::ShapeRef.new(shape: LastIngestStateChangeDates, location_name: "LastIngestStateChange"))
168
+ DatasourcePackageIngestDetail.struct_class = Types::DatasourcePackageIngestDetail
169
+
170
+ DatasourcePackageIngestDetails.key = Shapes::ShapeRef.new(shape: DatasourcePackage)
171
+ DatasourcePackageIngestDetails.value = Shapes::ShapeRef.new(shape: DatasourcePackageIngestDetail)
172
+
173
+ DatasourcePackageIngestHistory.key = Shapes::ShapeRef.new(shape: DatasourcePackage)
174
+ DatasourcePackageIngestHistory.value = Shapes::ShapeRef.new(shape: LastIngestStateChangeDates)
175
+
176
+ DatasourcePackageIngestStates.key = Shapes::ShapeRef.new(shape: DatasourcePackage)
177
+ DatasourcePackageIngestStates.value = Shapes::ShapeRef.new(shape: DatasourcePackageIngestState)
178
+
179
+ DatasourcePackageList.member = Shapes::ShapeRef.new(shape: DatasourcePackage)
180
+
181
+ DatasourcePackageUsageInfo.add_member(:volume_usage_in_bytes, Shapes::ShapeRef.new(shape: ByteValue, location_name: "VolumeUsageInBytes"))
182
+ DatasourcePackageUsageInfo.add_member(:volume_usage_update_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "VolumeUsageUpdateTime"))
183
+ DatasourcePackageUsageInfo.struct_class = Types::DatasourcePackageUsageInfo
184
+
121
185
  DeleteGraphRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
122
186
  DeleteGraphRequest.struct_class = Types::DeleteGraphRequest
123
187
 
@@ -153,11 +217,25 @@ module Aws::Detective
153
217
  Graph.add_member(:created_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTime"))
154
218
  Graph.struct_class = Types::Graph
155
219
 
220
+ GraphArnList.member = Shapes::ShapeRef.new(shape: GraphArn)
221
+
156
222
  GraphList.member = Shapes::ShapeRef.new(shape: Graph)
157
223
 
158
224
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
159
225
  InternalServerException.struct_class = Types::InternalServerException
160
226
 
227
+ LastIngestStateChangeDates.key = Shapes::ShapeRef.new(shape: DatasourcePackageIngestState)
228
+ LastIngestStateChangeDates.value = Shapes::ShapeRef.new(shape: TimestampForCollection)
229
+
230
+ ListDatasourcePackagesRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
231
+ ListDatasourcePackagesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
232
+ ListDatasourcePackagesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MemberResultsLimit, location_name: "MaxResults"))
233
+ ListDatasourcePackagesRequest.struct_class = Types::ListDatasourcePackagesRequest
234
+
235
+ ListDatasourcePackagesResponse.add_member(:datasource_packages, Shapes::ShapeRef.new(shape: DatasourcePackageIngestDetails, location_name: "DatasourcePackages"))
236
+ ListDatasourcePackagesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
237
+ ListDatasourcePackagesResponse.struct_class = Types::ListDatasourcePackagesResponse
238
+
161
239
  ListGraphsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
162
240
  ListGraphsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MemberResultsLimit, location_name: "MaxResults"))
163
241
  ListGraphsRequest.struct_class = Types::ListGraphsRequest
@@ -206,22 +284,34 @@ module Aws::Detective
206
284
  MemberDetail.add_member(:disabled_reason, Shapes::ShapeRef.new(shape: MemberDisabledReason, location_name: "DisabledReason"))
207
285
  MemberDetail.add_member(:invited_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "InvitedTime"))
208
286
  MemberDetail.add_member(:updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "UpdatedTime"))
209
- MemberDetail.add_member(:volume_usage_in_bytes, Shapes::ShapeRef.new(shape: ByteValue, location_name: "VolumeUsageInBytes"))
210
- MemberDetail.add_member(:volume_usage_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "VolumeUsageUpdatedTime"))
211
- MemberDetail.add_member(:percent_of_graph_utilization, Shapes::ShapeRef.new(shape: Percentage, deprecated: true, location_name: "PercentOfGraphUtilization", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageInBytes instead."}))
212
- MemberDetail.add_member(:percent_of_graph_utilization_updated_time, Shapes::ShapeRef.new(shape: Timestamp, deprecated: true, location_name: "PercentOfGraphUtilizationUpdatedTime", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageUpdatedTime instead."}))
287
+ MemberDetail.add_member(:volume_usage_in_bytes, Shapes::ShapeRef.new(shape: ByteValue, deprecated: true, location_name: "VolumeUsageInBytes", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageByDatasourcePackage instead."}))
288
+ MemberDetail.add_member(:volume_usage_updated_time, Shapes::ShapeRef.new(shape: Timestamp, deprecated: true, location_name: "VolumeUsageUpdatedTime", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageByDatasourcePackage instead."}))
289
+ MemberDetail.add_member(:percent_of_graph_utilization, Shapes::ShapeRef.new(shape: Percentage, deprecated: true, location_name: "PercentOfGraphUtilization", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageByDatasourcePackage instead."}))
290
+ MemberDetail.add_member(:percent_of_graph_utilization_updated_time, Shapes::ShapeRef.new(shape: Timestamp, deprecated: true, location_name: "PercentOfGraphUtilizationUpdatedTime", metadata: {"deprecatedMessage"=>"This property is deprecated. Use VolumeUsageByDatasourcePackage instead."}))
213
291
  MemberDetail.add_member(:invitation_type, Shapes::ShapeRef.new(shape: InvitationType, location_name: "InvitationType"))
292
+ MemberDetail.add_member(:volume_usage_by_datasource_package, Shapes::ShapeRef.new(shape: VolumeUsageByDatasourcePackage, location_name: "VolumeUsageByDatasourcePackage"))
293
+ MemberDetail.add_member(:datasource_package_ingest_states, Shapes::ShapeRef.new(shape: DatasourcePackageIngestStates, location_name: "DatasourcePackageIngestStates"))
214
294
  MemberDetail.struct_class = Types::MemberDetail
215
295
 
216
296
  MemberDetailList.member = Shapes::ShapeRef.new(shape: MemberDetail)
217
297
 
298
+ MembershipDatasources.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
299
+ MembershipDatasources.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, location_name: "GraphArn"))
300
+ MembershipDatasources.add_member(:datasource_package_ingest_history, Shapes::ShapeRef.new(shape: DatasourcePackageIngestHistory, location_name: "DatasourcePackageIngestHistory"))
301
+ MembershipDatasources.struct_class = Types::MembershipDatasources
302
+
303
+ MembershipDatasourcesList.member = Shapes::ShapeRef.new(shape: MembershipDatasources)
304
+
218
305
  RejectInvitationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
219
306
  RejectInvitationRequest.struct_class = Types::RejectInvitationRequest
220
307
 
308
+ ResourceList.member = Shapes::ShapeRef.new(shape: Resource)
309
+
221
310
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
222
311
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
223
312
 
224
313
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
314
+ ServiceQuotaExceededException.add_member(:resources, Shapes::ShapeRef.new(shape: ResourceList, location_name: "Resources"))
225
315
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
226
316
 
227
317
  StartMonitoringMemberRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
@@ -239,6 +329,9 @@ module Aws::Detective
239
329
 
240
330
  TagResourceResponse.struct_class = Types::TagResourceResponse
241
331
 
332
+ TimestampForCollection.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "Timestamp"))
333
+ TimestampForCollection.struct_class = Types::TimestampForCollection
334
+
242
335
  TooManyRequestsException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
243
336
  TooManyRequestsException.struct_class = Types::TooManyRequestsException
244
337
 
@@ -248,19 +341,34 @@ module Aws::Detective
248
341
 
249
342
  UnprocessedAccountList.member = Shapes::ShapeRef.new(shape: UnprocessedAccount)
250
343
 
344
+ UnprocessedGraph.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, location_name: "GraphArn"))
345
+ UnprocessedGraph.add_member(:reason, Shapes::ShapeRef.new(shape: UnprocessedReason, location_name: "Reason"))
346
+ UnprocessedGraph.struct_class = Types::UnprocessedGraph
347
+
348
+ UnprocessedGraphList.member = Shapes::ShapeRef.new(shape: UnprocessedGraph)
349
+
251
350
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location: "uri", location_name: "ResourceArn"))
252
351
  UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location: "querystring", location_name: "tagKeys"))
253
352
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
254
353
 
255
354
  UntagResourceResponse.struct_class = Types::UntagResourceResponse
256
355
 
356
+ UpdateDatasourcePackagesRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
357
+ UpdateDatasourcePackagesRequest.add_member(:datasource_packages, Shapes::ShapeRef.new(shape: DatasourcePackageList, required: true, location_name: "DatasourcePackages"))
358
+ UpdateDatasourcePackagesRequest.struct_class = Types::UpdateDatasourcePackagesRequest
359
+
257
360
  UpdateOrganizationConfigurationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
258
361
  UpdateOrganizationConfigurationRequest.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoEnable"))
259
362
  UpdateOrganizationConfigurationRequest.struct_class = Types::UpdateOrganizationConfigurationRequest
260
363
 
261
364
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
365
+ ValidationException.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
366
+ ValidationException.add_member(:error_code_reason, Shapes::ShapeRef.new(shape: ErrorCodeReason, location_name: "ErrorCodeReason"))
262
367
  ValidationException.struct_class = Types::ValidationException
263
368
 
369
+ VolumeUsageByDatasourcePackage.key = Shapes::ShapeRef.new(shape: DatasourcePackage)
370
+ VolumeUsageByDatasourcePackage.value = Shapes::ShapeRef.new(shape: DatasourcePackageUsageInfo)
371
+
264
372
 
265
373
  # @api private
266
374
  API = Seahorse::Model::Api.new.tap do |api|
@@ -291,6 +399,28 @@ module Aws::Detective
291
399
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
292
400
  end)
293
401
 
402
+ api.add_operation(:batch_get_graph_member_datasources, Seahorse::Model::Operation.new.tap do |o|
403
+ o.name = "BatchGetGraphMemberDatasources"
404
+ o.http_method = "POST"
405
+ o.http_request_uri = "/graph/datasources/get"
406
+ o.input = Shapes::ShapeRef.new(shape: BatchGetGraphMemberDatasourcesRequest)
407
+ o.output = Shapes::ShapeRef.new(shape: BatchGetGraphMemberDatasourcesResponse)
408
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
409
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
410
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
411
+ end)
412
+
413
+ api.add_operation(:batch_get_membership_datasources, Seahorse::Model::Operation.new.tap do |o|
414
+ o.name = "BatchGetMembershipDatasources"
415
+ o.http_method = "POST"
416
+ o.http_request_uri = "/membership/datasources/get"
417
+ o.input = Shapes::ShapeRef.new(shape: BatchGetMembershipDatasourcesRequest)
418
+ o.output = Shapes::ShapeRef.new(shape: BatchGetMembershipDatasourcesResponse)
419
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
420
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
421
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
422
+ end)
423
+
294
424
  api.add_operation(:create_graph, Seahorse::Model::Operation.new.tap do |o|
295
425
  o.name = "CreateGraph"
296
426
  o.http_method = "POST"
@@ -393,6 +523,23 @@ module Aws::Detective
393
523
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
394
524
  end)
395
525
 
526
+ api.add_operation(:list_datasource_packages, Seahorse::Model::Operation.new.tap do |o|
527
+ o.name = "ListDatasourcePackages"
528
+ o.http_method = "POST"
529
+ o.http_request_uri = "/graph/datasources/list"
530
+ o.input = Shapes::ShapeRef.new(shape: ListDatasourcePackagesRequest)
531
+ o.output = Shapes::ShapeRef.new(shape: ListDatasourcePackagesResponse)
532
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
533
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
534
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
535
+ o[:pager] = Aws::Pager.new(
536
+ limit_key: "max_results",
537
+ tokens: {
538
+ "next_token" => "next_token"
539
+ }
540
+ )
541
+ end)
542
+
396
543
  api.add_operation(:list_graphs, Seahorse::Model::Operation.new.tap do |o|
397
544
  o.name = "ListGraphs"
398
545
  o.http_method = "POST"
@@ -517,6 +664,18 @@ module Aws::Detective
517
664
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
518
665
  end)
519
666
 
667
+ api.add_operation(:update_datasource_packages, Seahorse::Model::Operation.new.tap do |o|
668
+ o.name = "UpdateDatasourcePackages"
669
+ o.http_method = "POST"
670
+ o.http_request_uri = "/graph/datasources/update"
671
+ o.input = Shapes::ShapeRef.new(shape: UpdateDatasourcePackagesRequest)
672
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
673
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
674
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
675
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
676
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
677
+ end)
678
+
520
679
  api.add_operation(:update_organization_configuration, Seahorse::Model::Operation.new.tap do |o|
521
680
  o.name = "UpdateOrganizationConfiguration"
522
681
  o.http_method = "POST"
@@ -98,6 +98,11 @@ module Aws::Detective
98
98
  def message
99
99
  @message || @data[:message]
100
100
  end
101
+
102
+ # @return [String]
103
+ def resources
104
+ @data[:resources]
105
+ end
101
106
  end
102
107
 
103
108
  class TooManyRequestsException < ServiceError
@@ -128,6 +133,16 @@ module Aws::Detective
128
133
  def message
129
134
  @message || @data[:message]
130
135
  end
136
+
137
+ # @return [String]
138
+ def error_code
139
+ @data[:error_code]
140
+ end
141
+
142
+ # @return [String]
143
+ def error_code_reason
144
+ @data[:error_code_reason]
145
+ end
131
146
  end
132
147
 
133
148
  end
@@ -89,6 +89,89 @@ module Aws::Detective
89
89
  include Aws::Structure
90
90
  end
91
91
 
92
+ # @note When making an API call, you may pass BatchGetGraphMemberDatasourcesRequest
93
+ # data as a hash:
94
+ #
95
+ # {
96
+ # graph_arn: "GraphArn", # required
97
+ # account_ids: ["AccountId"], # required
98
+ # }
99
+ #
100
+ # @!attribute [rw] graph_arn
101
+ # The ARN of the behavior graph.
102
+ # @return [String]
103
+ #
104
+ # @!attribute [rw] account_ids
105
+ # The list of Amazon Web Services accounts to get data source package
106
+ # information on.
107
+ # @return [Array<String>]
108
+ #
109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetGraphMemberDatasourcesRequest AWS API Documentation
110
+ #
111
+ class BatchGetGraphMemberDatasourcesRequest < Struct.new(
112
+ :graph_arn,
113
+ :account_ids)
114
+ SENSITIVE = []
115
+ include Aws::Structure
116
+ end
117
+
118
+ # @!attribute [rw] member_datasources
119
+ # Details on the status of data source packages for members of the
120
+ # behavior graph.
121
+ # @return [Array<Types::MembershipDatasources>]
122
+ #
123
+ # @!attribute [rw] unprocessed_accounts
124
+ # Accounts that data source package information could not be retrieved
125
+ # for.
126
+ # @return [Array<Types::UnprocessedAccount>]
127
+ #
128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetGraphMemberDatasourcesResponse AWS API Documentation
129
+ #
130
+ class BatchGetGraphMemberDatasourcesResponse < Struct.new(
131
+ :member_datasources,
132
+ :unprocessed_accounts)
133
+ SENSITIVE = []
134
+ include Aws::Structure
135
+ end
136
+
137
+ # @note When making an API call, you may pass BatchGetMembershipDatasourcesRequest
138
+ # data as a hash:
139
+ #
140
+ # {
141
+ # graph_arns: ["GraphArn"], # required
142
+ # }
143
+ #
144
+ # @!attribute [rw] graph_arns
145
+ # The ARN of the behavior graph.
146
+ # @return [Array<String>]
147
+ #
148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetMembershipDatasourcesRequest AWS API Documentation
149
+ #
150
+ class BatchGetMembershipDatasourcesRequest < Struct.new(
151
+ :graph_arns)
152
+ SENSITIVE = []
153
+ include Aws::Structure
154
+ end
155
+
156
+ # @!attribute [rw] membership_datasources
157
+ # Details on the data source package history for an member of the
158
+ # behavior graph.
159
+ # @return [Array<Types::MembershipDatasources>]
160
+ #
161
+ # @!attribute [rw] unprocessed_graphs
162
+ # Graphs that data source package information could not be retrieved
163
+ # for.
164
+ # @return [Array<Types::UnprocessedGraph>]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/BatchGetMembershipDatasourcesResponse AWS API Documentation
167
+ #
168
+ class BatchGetMembershipDatasourcesResponse < Struct.new(
169
+ :membership_datasources,
170
+ :unprocessed_graphs)
171
+ SENSITIVE = []
172
+ include Aws::Structure
173
+ end
174
+
92
175
  # The request attempted an invalid action.
93
176
  #
94
177
  # @!attribute [rw] message
@@ -215,6 +298,50 @@ module Aws::Detective
215
298
  include Aws::Structure
216
299
  end
217
300
 
301
+ # Details about the data source packages ingested by your behavior
302
+ # graph.
303
+ #
304
+ # @!attribute [rw] datasource_package_ingest_state
305
+ # Details on which data source packages are ingested for a member
306
+ # account.
307
+ # @return [String]
308
+ #
309
+ # @!attribute [rw] last_ingest_state_change
310
+ # The date a data source package was enabled for this account
311
+ # @return [Hash<String,Types::TimestampForCollection>]
312
+ #
313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/DatasourcePackageIngestDetail AWS API Documentation
314
+ #
315
+ class DatasourcePackageIngestDetail < Struct.new(
316
+ :datasource_package_ingest_state,
317
+ :last_ingest_state_change)
318
+ SENSITIVE = []
319
+ include Aws::Structure
320
+ end
321
+
322
+ # Information on the usage of a data source package in the behavior
323
+ # graph.
324
+ #
325
+ # @!attribute [rw] volume_usage_in_bytes
326
+ # Total volume of data in bytes per day ingested for a given data
327
+ # source package.
328
+ # @return [Integer]
329
+ #
330
+ # @!attribute [rw] volume_usage_update_time
331
+ # The data and time when the member account data volume was last
332
+ # updated. The value is an ISO8601 formatted string. For example,
333
+ # `2021-08-18T16:35:56.284Z`.
334
+ # @return [Time]
335
+ #
336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/DatasourcePackageUsageInfo AWS API Documentation
337
+ #
338
+ class DatasourcePackageUsageInfo < Struct.new(
339
+ :volume_usage_in_bytes,
340
+ :volume_usage_update_time)
341
+ SENSITIVE = []
342
+ include Aws::Structure
343
+ end
344
+
218
345
  # @note When making an API call, you may pass DeleteGraphRequest
219
346
  # data as a hash:
220
347
  #
@@ -445,6 +572,58 @@ module Aws::Detective
445
572
  include Aws::Structure
446
573
  end
447
574
 
575
+ # @note When making an API call, you may pass ListDatasourcePackagesRequest
576
+ # data as a hash:
577
+ #
578
+ # {
579
+ # graph_arn: "GraphArn", # required
580
+ # next_token: "PaginationToken",
581
+ # max_results: 1,
582
+ # }
583
+ #
584
+ # @!attribute [rw] graph_arn
585
+ # The ARN of the behavior graph.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] next_token
589
+ # For requests to get the next page of results, the pagination token
590
+ # that was returned with the previous set of results. The initial
591
+ # request does not include a pagination token.
592
+ # @return [String]
593
+ #
594
+ # @!attribute [rw] max_results
595
+ # The maximum number of results to return.
596
+ # @return [Integer]
597
+ #
598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListDatasourcePackagesRequest AWS API Documentation
599
+ #
600
+ class ListDatasourcePackagesRequest < Struct.new(
601
+ :graph_arn,
602
+ :next_token,
603
+ :max_results)
604
+ SENSITIVE = []
605
+ include Aws::Structure
606
+ end
607
+
608
+ # @!attribute [rw] datasource_packages
609
+ # Details on the data source packages active in the behavior graph.
610
+ # @return [Hash<String,Types::DatasourcePackageIngestDetail>]
611
+ #
612
+ # @!attribute [rw] next_token
613
+ # For requests to get the next page of results, the pagination token
614
+ # that was returned with the previous set of results. The initial
615
+ # request does not include a pagination token.
616
+ # @return [String]
617
+ #
618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListDatasourcePackagesResponse AWS API Documentation
619
+ #
620
+ class ListDatasourcePackagesResponse < Struct.new(
621
+ :datasource_packages,
622
+ :next_token)
623
+ SENSITIVE = []
624
+ include Aws::Structure
625
+ end
626
+
448
627
  # @note When making an API call, you may pass ListGraphsRequest
449
628
  # data as a hash:
450
629
  #
@@ -634,7 +813,7 @@ module Aws::Detective
634
813
  end
635
814
 
636
815
  # @!attribute [rw] administrators
637
- # The list of delegated administrator accounts.
816
+ # The list of Detective administrator accounts.
638
817
  # @return [Array<Types::Administrator>]
639
818
  #
640
819
  # @!attribute [rw] next_token
@@ -816,6 +995,15 @@ module Aws::Detective
816
995
  # `INVITATION`.
817
996
  # @return [String]
818
997
  #
998
+ # @!attribute [rw] volume_usage_by_datasource_package
999
+ # Details on the volume of usage for each data source package in a
1000
+ # behavior graph.
1001
+ # @return [Hash<String,Types::DatasourcePackageUsageInfo>]
1002
+ #
1003
+ # @!attribute [rw] datasource_package_ingest_states
1004
+ # The state of a data source package for the behavior graph.
1005
+ # @return [Hash<String,String>]
1006
+ #
819
1007
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/MemberDetail AWS API Documentation
820
1008
  #
821
1009
  class MemberDetail < Struct.new(
@@ -832,7 +1020,33 @@ module Aws::Detective
832
1020
  :volume_usage_updated_time,
833
1021
  :percent_of_graph_utilization,
834
1022
  :percent_of_graph_utilization_updated_time,
835
- :invitation_type)
1023
+ :invitation_type,
1024
+ :volume_usage_by_datasource_package,
1025
+ :datasource_package_ingest_states)
1026
+ SENSITIVE = []
1027
+ include Aws::Structure
1028
+ end
1029
+
1030
+ # Details on data source packages for members of the behavior graph.
1031
+ #
1032
+ # @!attribute [rw] account_id
1033
+ # The account identifier of the Amazon Web Services account.
1034
+ # @return [String]
1035
+ #
1036
+ # @!attribute [rw] graph_arn
1037
+ # The ARN of the organization behavior graph.
1038
+ # @return [String]
1039
+ #
1040
+ # @!attribute [rw] datasource_package_ingest_history
1041
+ # Details on when a data source package was added to a behavior graph.
1042
+ # @return [Hash<String,Hash<String,Types::TimestampForCollection>>]
1043
+ #
1044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/MembershipDatasources AWS API Documentation
1045
+ #
1046
+ class MembershipDatasources < Struct.new(
1047
+ :account_id,
1048
+ :graph_arn,
1049
+ :datasource_package_ingest_history)
836
1050
  SENSITIVE = []
837
1051
  include Aws::Structure
838
1052
  end
@@ -888,10 +1102,15 @@ module Aws::Detective
888
1102
  # @!attribute [rw] message
889
1103
  # @return [String]
890
1104
  #
1105
+ # @!attribute [rw] resources
1106
+ # The type of resource that has exceeded the service quota.
1107
+ # @return [Array<String>]
1108
+ #
891
1109
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ServiceQuotaExceededException AWS API Documentation
892
1110
  #
893
1111
  class ServiceQuotaExceededException < Struct.new(
894
- :message)
1112
+ :message,
1113
+ :resources)
895
1114
  SENSITIVE = []
896
1115
  include Aws::Structure
897
1116
  end
@@ -958,6 +1177,22 @@ module Aws::Detective
958
1177
  #
959
1178
  class TagResourceResponse < Aws::EmptyStructure; end
960
1179
 
1180
+ # Details on when data collection began for a source package.
1181
+ #
1182
+ # @!attribute [rw] timestamp
1183
+ # The data and time when data collection began for a source package.
1184
+ # The value is an ISO8601 formatted string. For example,
1185
+ # `2021-08-18T16:35:56.284Z`.
1186
+ # @return [Time]
1187
+ #
1188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/TimestampForCollection AWS API Documentation
1189
+ #
1190
+ class TimestampForCollection < Struct.new(
1191
+ :timestamp)
1192
+ SENSITIVE = []
1193
+ include Aws::Structure
1194
+ end
1195
+
961
1196
  # The request cannot be completed because too many other requests are
962
1197
  # occurring at the same time.
963
1198
  #
@@ -993,6 +1228,26 @@ module Aws::Detective
993
1228
  include Aws::Structure
994
1229
  end
995
1230
 
1231
+ # Behavior graphs that could not be processed in the request.
1232
+ #
1233
+ # @!attribute [rw] graph_arn
1234
+ # The ARN of the organization behavior graph.
1235
+ # @return [String]
1236
+ #
1237
+ # @!attribute [rw] reason
1238
+ # The reason data source package information could not be processed
1239
+ # for a behavior graph.
1240
+ # @return [String]
1241
+ #
1242
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/UnprocessedGraph AWS API Documentation
1243
+ #
1244
+ class UnprocessedGraph < Struct.new(
1245
+ :graph_arn,
1246
+ :reason)
1247
+ SENSITIVE = []
1248
+ include Aws::Structure
1249
+ end
1250
+
996
1251
  # @note When making an API call, you may pass UntagResourceRequest
997
1252
  # data as a hash:
998
1253
  #
@@ -1023,6 +1278,31 @@ module Aws::Detective
1023
1278
  #
1024
1279
  class UntagResourceResponse < Aws::EmptyStructure; end
1025
1280
 
1281
+ # @note When making an API call, you may pass UpdateDatasourcePackagesRequest
1282
+ # data as a hash:
1283
+ #
1284
+ # {
1285
+ # graph_arn: "GraphArn", # required
1286
+ # datasource_packages: ["DETECTIVE_CORE"], # required, accepts DETECTIVE_CORE, EKS_AUDIT
1287
+ # }
1288
+ #
1289
+ # @!attribute [rw] graph_arn
1290
+ # The ARN of the behavior graph.
1291
+ # @return [String]
1292
+ #
1293
+ # @!attribute [rw] datasource_packages
1294
+ # The data source package start for the behavior graph.
1295
+ # @return [Array<String>]
1296
+ #
1297
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/UpdateDatasourcePackagesRequest AWS API Documentation
1298
+ #
1299
+ class UpdateDatasourcePackagesRequest < Struct.new(
1300
+ :graph_arn,
1301
+ :datasource_packages)
1302
+ SENSITIVE = []
1303
+ include Aws::Structure
1304
+ end
1305
+
1026
1306
  # @note When making an API call, you may pass UpdateOrganizationConfigurationRequest
1027
1307
  # data as a hash:
1028
1308
  #
@@ -1054,10 +1334,20 @@ module Aws::Detective
1054
1334
  # @!attribute [rw] message
1055
1335
  # @return [String]
1056
1336
  #
1337
+ # @!attribute [rw] error_code
1338
+ # The error code associated with the validation failure.
1339
+ # @return [String]
1340
+ #
1341
+ # @!attribute [rw] error_code_reason
1342
+ # An explanation of why validation failed.
1343
+ # @return [String]
1344
+ #
1057
1345
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ValidationException AWS API Documentation
1058
1346
  #
1059
1347
  class ValidationException < Struct.new(
1060
- :message)
1348
+ :message,
1349
+ :error_code,
1350
+ :error_code_reason)
1061
1351
  SENSITIVE = []
1062
1352
  include Aws::Structure
1063
1353
  end
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-detective/customizations'
48
48
  # @!group service
49
49
  module Aws::Detective
50
50
 
51
- GEM_VERSION = '1.28.0'
51
+ GEM_VERSION = '1.29.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-detective
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.28.0
4
+ version: 1.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core