aws-sdk-detective 1.1.0 → 1.6.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
- SHA1:
3
- metadata.gz: 241429eb5d7b46f0c5f51000e09ebca24f03382d
4
- data.tar.gz: da020484b1efe66418f83235d6893eebcb674fff
2
+ SHA256:
3
+ metadata.gz: 991e52931a7528bdf176c93b990bad3c5f98bc5e4bf18fcbdeb637da4311811f
4
+ data.tar.gz: d12e22ed0ebf84d6fc9fb0c51ab22bc6e9f73ecc144e580155d322d891ef0b59
5
5
  SHA512:
6
- metadata.gz: 8dfaca63e5f38e7b717ce77f26b7c3b0a78182191dd19800e54b386751f11f85b3790365c75cdeb87df6941d6a4dc0ebf7e7ed6467724df61839189c6561bd82
7
- data.tar.gz: 8d27834702c2899f2d55c4a5abdd46f2f03f71d4e2102c2ca67b93f751753ff76e0cdb42a970a30521f051f3a57d9e9a1770e3f2775ef18f76e8e1dc3c822873
6
+ metadata.gz: 77bec73c2aad2ac6127ab3a760d2de6cc7ac0590712ddfb6f3a5de05bbdf456d0d921ef1b1984c4ac9857dbe285a840c54921e63043811e224a445efefe15b0a
7
+ data.tar.gz: be18ed21ea58254ece9511b8b544a71789b789ba25640f377dd2a3ca94fbf20d058d1d239eeb953f09cb0eaceeabf508bc3b6fc2871a3d1655b1bfc832f1162a
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-detective/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # detective = Aws::Detective::Client.new
28
+ # resp = detective.accept_invitation(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from Amazon Detective all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from Amazon Detective are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::Detective::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all Amazon Detective API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-detective/customizations'
42
45
  # @service
43
46
  module Aws::Detective
44
47
 
45
- GEM_VERSION = '1.1.0'
48
+ GEM_VERSION = '1.6.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:detective)
31
31
 
32
32
  module Aws::Detective
33
+ # An API client for Detective. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::Detective::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::Detective
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::Detective
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::Detective
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::Detective
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::Detective
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::Detective
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::Detective
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -209,16 +264,15 @@ module Aws::Detective
209
264
  # requests through. Formatted like 'http://proxy.com:123'.
210
265
  #
211
266
  # @option options [Float] :http_open_timeout (15) The number of
212
- # seconds to wait when opening a HTTP session before rasing a
267
+ # seconds to wait when opening a HTTP session before raising a
213
268
  # `Timeout::Error`.
214
269
  #
215
270
  # @option options [Integer] :http_read_timeout (60) The default
216
271
  # number of seconds to wait for response data. This value can
217
- # safely be set
218
- # per-request on the session yeidled by {#session_for}.
272
+ # safely be set per-request on the session.
219
273
  #
220
274
  # @option options [Float] :http_idle_timeout (5) The number of
221
- # seconds a connection is allowed to sit idble before it is
275
+ # seconds a connection is allowed to sit idle before it is
222
276
  # considered stale. Stale connections are closed and removed
223
277
  # from the pool before making a request.
224
278
  #
@@ -227,7 +281,7 @@ module Aws::Detective
227
281
  # request body. This option has no effect unless the request has
228
282
  # "Expect" header set to "100-continue". Defaults to `nil` which
229
283
  # disables this behaviour. This value can safely be set per
230
- # request on the session yeidled by {#session_for}.
284
+ # request on the session.
231
285
  #
232
286
  # @option options [Boolean] :http_wire_trace (false) When `true`,
233
287
  # HTTP debug output will be sent to the `:logger`.
@@ -254,8 +308,6 @@ module Aws::Detective
254
308
 
255
309
  # @!group API Operations
256
310
 
257
- # Amazon Detective is currently in preview.
258
- #
259
311
  # Accepts an invitation for the member account to contribute data to a
260
312
  # behavior graph. This operation can only be called by an invited member
261
313
  # account.
@@ -287,12 +339,17 @@ module Aws::Detective
287
339
  req.send_request(options)
288
340
  end
289
341
 
290
- # Amazon Detective is currently in preview.
291
- #
292
342
  # Creates a new behavior graph for the calling account, and sets that
293
343
  # account as the master account. This operation is called by the account
294
344
  # that is enabling Detective.
295
345
  #
346
+ # Before you try to enable Detective, make sure that your account has
347
+ # been enrolled in Amazon GuardDuty for at least 48 hours. If you do not
348
+ # meet this requirement, you cannot enable Detective. If you do meet the
349
+ # GuardDuty prerequisite, then when you make the request to enable
350
+ # Detective, it checks whether your data volume is within the Detective
351
+ # quota. If it exceeds the quota, then you cannot enable Detective.
352
+ #
296
353
  # The operation also enables Detective for the calling account in the
297
354
  # currently selected Region. It returns the ARN of the new behavior
298
355
  # graph.
@@ -322,8 +379,6 @@ module Aws::Detective
322
379
  req.send_request(options)
323
380
  end
324
381
 
325
- # Amazon Detective is currently in preview.
326
- #
327
382
  # Sends a request to invite the specified AWS accounts to be member
328
383
  # accounts in the behavior graph. This operation can only be called by
329
384
  # the master account for a behavior graph.
@@ -383,9 +438,12 @@ module Aws::Detective
383
438
  # resp.members[0].email_address #=> String
384
439
  # resp.members[0].graph_arn #=> String
385
440
  # resp.members[0].master_id #=> String
386
- # resp.members[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED"
441
+ # resp.members[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED", "ACCEPTED_BUT_DISABLED"
442
+ # resp.members[0].disabled_reason #=> String, one of "VOLUME_TOO_HIGH", "VOLUME_UNKNOWN"
387
443
  # resp.members[0].invited_time #=> Time
388
444
  # resp.members[0].updated_time #=> Time
445
+ # resp.members[0].percent_of_graph_utilization #=> Float
446
+ # resp.members[0].percent_of_graph_utilization_updated_time #=> Time
389
447
  # resp.unprocessed_accounts #=> Array
390
448
  # resp.unprocessed_accounts[0].account_id #=> String
391
449
  # resp.unprocessed_accounts[0].reason #=> String
@@ -399,8 +457,6 @@ module Aws::Detective
399
457
  req.send_request(options)
400
458
  end
401
459
 
402
- # Amazon Detective is currently in preview.
403
- #
404
460
  # Disables the specified behavior graph and queues it to be deleted.
405
461
  # This operation removes the graph from each member account's list of
406
462
  # behavior graphs.
@@ -428,8 +484,6 @@ module Aws::Detective
428
484
  req.send_request(options)
429
485
  end
430
486
 
431
- # Amazon Detective is currently in preview.
432
- #
433
487
  # Deletes one or more member accounts from the master account behavior
434
488
  # graph. This operation can only be called by a Detective master
435
489
  # account. That account cannot use `DeleteMembers` to delete their own
@@ -472,8 +526,6 @@ module Aws::Detective
472
526
  req.send_request(options)
473
527
  end
474
528
 
475
- # Amazon Detective is currently in preview.
476
- #
477
529
  # Removes the member account from the specified behavior graph. This
478
530
  # operation can only be called by a member account that has the
479
531
  # `ENABLED` status.
@@ -501,8 +553,6 @@ module Aws::Detective
501
553
  req.send_request(options)
502
554
  end
503
555
 
504
- # Amazon Detective is currently in preview.
505
- #
506
556
  # Returns the membership details for specified member accounts for a
507
557
  # behavior graph.
508
558
  #
@@ -535,9 +585,12 @@ module Aws::Detective
535
585
  # resp.member_details[0].email_address #=> String
536
586
  # resp.member_details[0].graph_arn #=> String
537
587
  # resp.member_details[0].master_id #=> String
538
- # resp.member_details[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED"
588
+ # resp.member_details[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED", "ACCEPTED_BUT_DISABLED"
589
+ # resp.member_details[0].disabled_reason #=> String, one of "VOLUME_TOO_HIGH", "VOLUME_UNKNOWN"
539
590
  # resp.member_details[0].invited_time #=> Time
540
591
  # resp.member_details[0].updated_time #=> Time
592
+ # resp.member_details[0].percent_of_graph_utilization #=> Float
593
+ # resp.member_details[0].percent_of_graph_utilization_updated_time #=> Time
541
594
  # resp.unprocessed_accounts #=> Array
542
595
  # resp.unprocessed_accounts[0].account_id #=> String
543
596
  # resp.unprocessed_accounts[0].reason #=> String
@@ -551,8 +604,6 @@ module Aws::Detective
551
604
  req.send_request(options)
552
605
  end
553
606
 
554
- # Amazon Detective is currently in preview.
555
- #
556
607
  # Returns the list of behavior graphs that the calling account is a
557
608
  # master of. This operation can only be called by a master account.
558
609
  #
@@ -574,6 +625,8 @@ module Aws::Detective
574
625
  # * {Types::ListGraphsResponse#graph_list #graph_list} => Array&lt;Types::Graph&gt;
575
626
  # * {Types::ListGraphsResponse#next_token #next_token} => String
576
627
  #
628
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
629
+ #
577
630
  # @example Request syntax with placeholder values
578
631
  #
579
632
  # resp = client.list_graphs({
@@ -597,8 +650,6 @@ module Aws::Detective
597
650
  req.send_request(options)
598
651
  end
599
652
 
600
- # Amazon Detective is currently in preview.
601
- #
602
653
  # Retrieves the list of open and accepted behavior graph invitations for
603
654
  # the member account. This operation can only be called by a member
604
655
  # account.
@@ -626,6 +677,8 @@ module Aws::Detective
626
677
  # * {Types::ListInvitationsResponse#invitations #invitations} => Array&lt;Types::MemberDetail&gt;
627
678
  # * {Types::ListInvitationsResponse#next_token #next_token} => String
628
679
  #
680
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
681
+ #
629
682
  # @example Request syntax with placeholder values
630
683
  #
631
684
  # resp = client.list_invitations({
@@ -640,9 +693,12 @@ module Aws::Detective
640
693
  # resp.invitations[0].email_address #=> String
641
694
  # resp.invitations[0].graph_arn #=> String
642
695
  # resp.invitations[0].master_id #=> String
643
- # resp.invitations[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED"
696
+ # resp.invitations[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED", "ACCEPTED_BUT_DISABLED"
697
+ # resp.invitations[0].disabled_reason #=> String, one of "VOLUME_TOO_HIGH", "VOLUME_UNKNOWN"
644
698
  # resp.invitations[0].invited_time #=> Time
645
699
  # resp.invitations[0].updated_time #=> Time
700
+ # resp.invitations[0].percent_of_graph_utilization #=> Float
701
+ # resp.invitations[0].percent_of_graph_utilization_updated_time #=> Time
646
702
  # resp.next_token #=> String
647
703
  #
648
704
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListInvitations AWS API Documentation
@@ -654,8 +710,6 @@ module Aws::Detective
654
710
  req.send_request(options)
655
711
  end
656
712
 
657
- # Amazon Detective is currently in preview.
658
- #
659
713
  # Retrieves the list of member accounts for a behavior graph. Does not
660
714
  # return member accounts that were removed from the behavior graph.
661
715
  #
@@ -678,6 +732,8 @@ module Aws::Detective
678
732
  # * {Types::ListMembersResponse#member_details #member_details} => Array&lt;Types::MemberDetail&gt;
679
733
  # * {Types::ListMembersResponse#next_token #next_token} => String
680
734
  #
735
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
736
+ #
681
737
  # @example Request syntax with placeholder values
682
738
  #
683
739
  # resp = client.list_members({
@@ -693,9 +749,12 @@ module Aws::Detective
693
749
  # resp.member_details[0].email_address #=> String
694
750
  # resp.member_details[0].graph_arn #=> String
695
751
  # resp.member_details[0].master_id #=> String
696
- # resp.member_details[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED"
752
+ # resp.member_details[0].status #=> String, one of "INVITED", "VERIFICATION_IN_PROGRESS", "VERIFICATION_FAILED", "ENABLED", "ACCEPTED_BUT_DISABLED"
753
+ # resp.member_details[0].disabled_reason #=> String, one of "VOLUME_TOO_HIGH", "VOLUME_UNKNOWN"
697
754
  # resp.member_details[0].invited_time #=> Time
698
755
  # resp.member_details[0].updated_time #=> Time
756
+ # resp.member_details[0].percent_of_graph_utilization #=> Float
757
+ # resp.member_details[0].percent_of_graph_utilization_updated_time #=> Time
699
758
  # resp.next_token #=> String
700
759
  #
701
760
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/ListMembers AWS API Documentation
@@ -707,8 +766,6 @@ module Aws::Detective
707
766
  req.send_request(options)
708
767
  end
709
768
 
710
- # Amazon Detective is currently in preview.
711
- #
712
769
  # Rejects an invitation to contribute the account data to a behavior
713
770
  # graph. This operation must be called by a member account that has the
714
771
  # `INVITED` status.
@@ -736,6 +793,44 @@ module Aws::Detective
736
793
  req.send_request(options)
737
794
  end
738
795
 
796
+ # Sends a request to enable data ingest for a member account that has a
797
+ # status of `ACCEPTED_BUT_DISABLED`.
798
+ #
799
+ # For valid member accounts, the status is updated as follows.
800
+ #
801
+ # * If Detective enabled the member account, then the new status is
802
+ # `ENABLED`.
803
+ #
804
+ # * If Detective cannot enable the member account, the status remains
805
+ # `ACCEPTED_BUT_DISABLED`.
806
+ #
807
+ # @option params [required, String] :graph_arn
808
+ # The ARN of the behavior graph.
809
+ #
810
+ # @option params [required, String] :account_id
811
+ # The account ID of the member account to try to enable.
812
+ #
813
+ # The account must be an invited member account with a status of
814
+ # `ACCEPTED_BUT_DISABLED`.
815
+ #
816
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
817
+ #
818
+ # @example Request syntax with placeholder values
819
+ #
820
+ # resp = client.start_monitoring_member({
821
+ # graph_arn: "GraphArn", # required
822
+ # account_id: "AccountId", # required
823
+ # })
824
+ #
825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/StartMonitoringMember AWS API Documentation
826
+ #
827
+ # @overload start_monitoring_member(params = {})
828
+ # @param [Hash] params ({})
829
+ def start_monitoring_member(params = {}, options = {})
830
+ req = build_request(:start_monitoring_member, params)
831
+ req.send_request(options)
832
+ end
833
+
739
834
  # @!endgroup
740
835
 
741
836
  # @param params ({})
@@ -749,7 +844,7 @@ module Aws::Detective
749
844
  params: params,
750
845
  config: config)
751
846
  context[:gem_name] = 'aws-sdk-detective'
752
- context[:gem_version] = '1.1.0'
847
+ context[:gem_version] = '1.6.0'
753
848
  Seahorse::Client::Request.new(handlers, context)
754
849
  end
755
850
 
@@ -41,12 +41,15 @@ module Aws::Detective
41
41
  ListMembersResponse = Shapes::StructureShape.new(name: 'ListMembersResponse')
42
42
  MemberDetail = Shapes::StructureShape.new(name: 'MemberDetail')
43
43
  MemberDetailList = Shapes::ListShape.new(name: 'MemberDetailList')
44
+ MemberDisabledReason = Shapes::StringShape.new(name: 'MemberDisabledReason')
44
45
  MemberResultsLimit = Shapes::IntegerShape.new(name: 'MemberResultsLimit')
45
46
  MemberStatus = Shapes::StringShape.new(name: 'MemberStatus')
46
47
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
48
+ Percentage = Shapes::FloatShape.new(name: 'Percentage')
47
49
  RejectInvitationRequest = Shapes::StructureShape.new(name: 'RejectInvitationRequest')
48
50
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
49
51
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
52
+ StartMonitoringMemberRequest = Shapes::StructureShape.new(name: 'StartMonitoringMemberRequest')
50
53
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
51
54
  UnprocessedAccount = Shapes::StructureShape.new(name: 'UnprocessedAccount')
52
55
  UnprocessedAccountList = Shapes::ListShape.new(name: 'UnprocessedAccountList')
@@ -140,8 +143,11 @@ module Aws::Detective
140
143
  MemberDetail.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, location_name: "GraphArn"))
141
144
  MemberDetail.add_member(:master_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "MasterId"))
142
145
  MemberDetail.add_member(:status, Shapes::ShapeRef.new(shape: MemberStatus, location_name: "Status"))
146
+ MemberDetail.add_member(:disabled_reason, Shapes::ShapeRef.new(shape: MemberDisabledReason, location_name: "DisabledReason"))
143
147
  MemberDetail.add_member(:invited_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "InvitedTime"))
144
148
  MemberDetail.add_member(:updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "UpdatedTime"))
149
+ MemberDetail.add_member(:percent_of_graph_utilization, Shapes::ShapeRef.new(shape: Percentage, location_name: "PercentOfGraphUtilization"))
150
+ MemberDetail.add_member(:percent_of_graph_utilization_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "PercentOfGraphUtilizationUpdatedTime"))
145
151
  MemberDetail.struct_class = Types::MemberDetail
146
152
 
147
153
  MemberDetailList.member = Shapes::ShapeRef.new(shape: MemberDetail)
@@ -155,6 +161,10 @@ module Aws::Detective
155
161
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
156
162
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
157
163
 
164
+ StartMonitoringMemberRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
165
+ StartMonitoringMemberRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
166
+ StartMonitoringMemberRequest.struct_class = Types::StartMonitoringMemberRequest
167
+
158
168
  UnprocessedAccount.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
159
169
  UnprocessedAccount.add_member(:reason, Shapes::ShapeRef.new(shape: UnprocessedReason, location_name: "Reason"))
160
170
  UnprocessedAccount.struct_class = Types::UnprocessedAccount
@@ -202,6 +212,7 @@ module Aws::Detective
202
212
  o.output = Shapes::ShapeRef.new(shape: CreateGraphResponse)
203
213
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
204
214
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
215
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
205
216
  end)
206
217
 
207
218
  api.add_operation(:create_members, Seahorse::Model::Operation.new.tap do |o|
@@ -322,6 +333,19 @@ module Aws::Detective
322
333
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
323
334
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
324
335
  end)
336
+
337
+ api.add_operation(:start_monitoring_member, Seahorse::Model::Operation.new.tap do |o|
338
+ o.name = "StartMonitoringMember"
339
+ o.http_method = "POST"
340
+ o.http_request_uri = "/graph/member/monitoringstate"
341
+ o.input = Shapes::ShapeRef.new(shape: StartMonitoringMemberRequest)
342
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
343
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
344
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
345
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
346
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
347
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
348
+ end)
325
349
  end
326
350
 
327
351
  end
@@ -6,6 +6,33 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::Detective
9
+
10
+ # When Detective returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::Detective::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all Detective errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::Detective::Errors::ServiceError
18
+ # # rescues all Detective API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {ConflictException}
29
+ # * {InternalServerException}
30
+ # * {ResourceNotFoundException}
31
+ # * {ServiceQuotaExceededException}
32
+ # * {ValidationException}
33
+ #
34
+ # Additionally, error classes are dynamically generated for service errors based on the error code
35
+ # if they are not defined above.
9
36
  module Errors
10
37
 
11
38
  extend Aws::Errors::DynamicErrors
@@ -23,7 +50,6 @@ module Aws::Detective
23
50
  def message
24
51
  @message || @data[:message]
25
52
  end
26
-
27
53
  end
28
54
 
29
55
  class InternalServerException < ServiceError
@@ -39,7 +65,6 @@ module Aws::Detective
39
65
  def message
40
66
  @message || @data[:message]
41
67
  end
42
-
43
68
  end
44
69
 
45
70
  class ResourceNotFoundException < ServiceError
@@ -55,7 +80,6 @@ module Aws::Detective
55
80
  def message
56
81
  @message || @data[:message]
57
82
  end
58
-
59
83
  end
60
84
 
61
85
  class ServiceQuotaExceededException < ServiceError
@@ -71,7 +95,6 @@ module Aws::Detective
71
95
  def message
72
96
  @message || @data[:message]
73
97
  end
74
-
75
98
  end
76
99
 
77
100
  class ValidationException < ServiceError
@@ -87,7 +110,6 @@ module Aws::Detective
87
110
  def message
88
111
  @message || @data[:message]
89
112
  end
90
-
91
113
  end
92
114
 
93
115
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::Detective
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -29,8 +29,6 @@ module Aws::Detective
29
29
  include Aws::Structure
30
30
  end
31
31
 
32
- # Amazon Detective is currently in preview.
33
- #
34
32
  # An AWS account that is the master of or a member of a behavior graph.
35
33
  #
36
34
  # @note When making an API call, you may pass Account
@@ -274,8 +272,6 @@ module Aws::Detective
274
272
  include Aws::Structure
275
273
  end
276
274
 
277
- # Amazon Detective is currently in preview.
278
- #
279
275
  # A behavior graph in Detective.
280
276
  #
281
277
  # @!attribute [rw] arn
@@ -459,8 +455,6 @@ module Aws::Detective
459
455
  include Aws::Structure
460
456
  end
461
457
 
462
- # Amazon Detective is currently in preview.
463
- #
464
458
  # Details about a member account that was invited to contribute to a
465
459
  # behavior graph.
466
460
  #
@@ -502,10 +496,29 @@ module Aws::Detective
502
496
  # * `ENABLED` - Indicates that the member account accepted the
503
497
  # invitation to contribute to the behavior graph.
504
498
  #
499
+ # * `ACCEPTED_BUT_DISABLED` - Indicates that the member account
500
+ # accepted the invitation but is prevented from contributing data to
501
+ # the behavior graph. `DisabledReason` provides the reason why the
502
+ # member account is not enabled.
503
+ #
505
504
  # Member accounts that declined an invitation or that were removed
506
505
  # from the behavior graph are not included.
507
506
  # @return [String]
508
507
  #
508
+ # @!attribute [rw] disabled_reason
509
+ # For member accounts with a status of `ACCEPTED_BUT_DISABLED`, the
510
+ # reason that the member account is not enabled.
511
+ #
512
+ # The reason can have one of the following values:
513
+ #
514
+ # * `VOLUME_TOO_HIGH` - Indicates that adding the member account would
515
+ # cause the data volume for the behavior graph to be too high.
516
+ #
517
+ # * `VOLUME_UNKNOWN` - Indicates that Detective is unable to verify
518
+ # the data volume for the member account. This is usually because
519
+ # the member account is not enrolled in Amazon GuardDuty.
520
+ # @return [String]
521
+ #
509
522
  # @!attribute [rw] invited_time
510
523
  # The date and time that Detective sent the invitation to the member
511
524
  # account. The value is in milliseconds since the epoch.
@@ -516,6 +529,26 @@ module Aws::Detective
516
529
  # value is in milliseconds since the epoch.
517
530
  # @return [Time]
518
531
  #
532
+ # @!attribute [rw] percent_of_graph_utilization
533
+ # The member account data volume as a percentage of the maximum
534
+ # allowed data volume. 0 indicates 0 percent, and 100 indicates 100
535
+ # percent.
536
+ #
537
+ # Note that this is not the percentage of the behavior graph data
538
+ # volume.
539
+ #
540
+ # For example, the data volume for the behavior graph is 80 GB per
541
+ # day. The maximum data volume is 160 GB per day. If the data volume
542
+ # for the member account is 40 GB per day, then
543
+ # `PercentOfGraphUtilization` is 25. It represents 25% of the maximum
544
+ # allowed data volume.
545
+ # @return [Float]
546
+ #
547
+ # @!attribute [rw] percent_of_graph_utilization_updated_time
548
+ # The date and time when the graph utilization percentage was last
549
+ # updated.
550
+ # @return [Time]
551
+ #
519
552
  # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/MemberDetail AWS API Documentation
520
553
  #
521
554
  class MemberDetail < Struct.new(
@@ -524,8 +557,11 @@ module Aws::Detective
524
557
  :graph_arn,
525
558
  :master_id,
526
559
  :status,
560
+ :disabled_reason,
527
561
  :invited_time,
528
- :updated_time)
562
+ :updated_time,
563
+ :percent_of_graph_utilization,
564
+ :percent_of_graph_utilization_updated_time)
529
565
  include Aws::Structure
530
566
  end
531
567
 
@@ -562,9 +598,18 @@ module Aws::Detective
562
598
  include Aws::Structure
563
599
  end
564
600
 
565
- # This request would cause the number of member accounts in the behavior
566
- # graph to exceed the maximum allowed. A behavior graph cannot have more
567
- # than 1000 member accounts.
601
+ # This request cannot be completed for one of the following reasons.
602
+ #
603
+ # * The request would cause the number of member accounts in the
604
+ # behavior graph to exceed the maximum allowed. A behavior graph
605
+ # cannot have more than 1000 member accounts.
606
+ #
607
+ # * The request would cause the data rate for the behavior graph to
608
+ # exceed the maximum allowed.
609
+ #
610
+ # * Detective is unable to verify the data rate for the member account.
611
+ # This is usually because the member account is not enrolled in Amazon
612
+ # GuardDuty.
568
613
  #
569
614
  # @!attribute [rw] message
570
615
  # @return [String]
@@ -576,8 +621,33 @@ module Aws::Detective
576
621
  include Aws::Structure
577
622
  end
578
623
 
579
- # Amazon Detective is currently in preview.
624
+ # @note When making an API call, you may pass StartMonitoringMemberRequest
625
+ # data as a hash:
580
626
  #
627
+ # {
628
+ # graph_arn: "GraphArn", # required
629
+ # account_id: "AccountId", # required
630
+ # }
631
+ #
632
+ # @!attribute [rw] graph_arn
633
+ # The ARN of the behavior graph.
634
+ # @return [String]
635
+ #
636
+ # @!attribute [rw] account_id
637
+ # The account ID of the member account to try to enable.
638
+ #
639
+ # The account must be an invited member account with a status of
640
+ # `ACCEPTED_BUT_DISABLED`.
641
+ # @return [String]
642
+ #
643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/detective-2018-10-26/StartMonitoringMemberRequest AWS API Documentation
644
+ #
645
+ class StartMonitoringMemberRequest < Struct.new(
646
+ :graph_arn,
647
+ :account_id)
648
+ include Aws::Structure
649
+ end
650
+
581
651
  # A member account that was included in a request but for which the
582
652
  # request could not be processed.
583
653
  #
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.1.0
4
+ version: 1.6.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: 2019-12-23 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - Amazon Detective