aws-sdk-detective 1.42.0 → 1.44.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -13,6 +13,9 @@ module Aws::Detective
13
13
 
14
14
  include Seahorse::Model
15
15
 
16
+ APIFailureCount = Shapes::IntegerShape.new(name: 'APIFailureCount')
17
+ APIName = Shapes::StringShape.new(name: 'APIName')
18
+ APISuccessCount = Shapes::IntegerShape.new(name: 'APISuccessCount')
16
19
  AcceptInvitationRequest = Shapes::StructureShape.new(name: 'AcceptInvitationRequest')
17
20
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
18
21
  Account = Shapes::StructureShape.new(name: 'Account')
@@ -22,6 +25,8 @@ module Aws::Detective
22
25
  AccountList = Shapes::ListShape.new(name: 'AccountList')
23
26
  Administrator = Shapes::StructureShape.new(name: 'Administrator')
24
27
  AdministratorList = Shapes::ListShape.new(name: 'AdministratorList')
28
+ AiPaginationToken = Shapes::StringShape.new(name: 'AiPaginationToken')
29
+ Aso = Shapes::StringShape.new(name: 'Aso')
25
30
  BatchGetGraphMemberDatasourcesRequest = Shapes::StructureShape.new(name: 'BatchGetGraphMemberDatasourcesRequest')
26
31
  BatchGetGraphMemberDatasourcesResponse = Shapes::StructureShape.new(name: 'BatchGetGraphMemberDatasourcesResponse')
27
32
  BatchGetMembershipDatasourcesRequest = Shapes::StructureShape.new(name: 'BatchGetMembershipDatasourcesRequest')
@@ -41,6 +46,7 @@ module Aws::Detective
41
46
  DatasourcePackageIngestStates = Shapes::MapShape.new(name: 'DatasourcePackageIngestStates')
42
47
  DatasourcePackageList = Shapes::ListShape.new(name: 'DatasourcePackageList')
43
48
  DatasourcePackageUsageInfo = Shapes::StructureShape.new(name: 'DatasourcePackageUsageInfo')
49
+ DateFilter = Shapes::StructureShape.new(name: 'DateFilter')
44
50
  DeleteGraphRequest = Shapes::StructureShape.new(name: 'DeleteGraphRequest')
45
51
  DeleteMembersRequest = Shapes::StructureShape.new(name: 'DeleteMembersRequest')
46
52
  DeleteMembersResponse = Shapes::StructureShape.new(name: 'DeleteMembersResponse')
@@ -50,22 +56,45 @@ module Aws::Detective
50
56
  EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
51
57
  EmailMessage = Shapes::StringShape.new(name: 'EmailMessage')
52
58
  EnableOrganizationAdminAccountRequest = Shapes::StructureShape.new(name: 'EnableOrganizationAdminAccountRequest')
59
+ EntityArn = Shapes::StringShape.new(name: 'EntityArn')
60
+ EntityType = Shapes::StringShape.new(name: 'EntityType')
53
61
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
54
62
  ErrorCodeReason = Shapes::StringShape.new(name: 'ErrorCodeReason')
55
63
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
64
+ Field = Shapes::StringShape.new(name: 'Field')
65
+ FilterCriteria = Shapes::StructureShape.new(name: 'FilterCriteria')
66
+ FlaggedIpAddressDetail = Shapes::StructureShape.new(name: 'FlaggedIpAddressDetail')
67
+ GetInvestigationRequest = Shapes::StructureShape.new(name: 'GetInvestigationRequest')
68
+ GetInvestigationResponse = Shapes::StructureShape.new(name: 'GetInvestigationResponse')
56
69
  GetMembersRequest = Shapes::StructureShape.new(name: 'GetMembersRequest')
57
70
  GetMembersResponse = Shapes::StructureShape.new(name: 'GetMembersResponse')
58
71
  Graph = Shapes::StructureShape.new(name: 'Graph')
59
72
  GraphArn = Shapes::StringShape.new(name: 'GraphArn')
60
73
  GraphArnList = Shapes::ListShape.new(name: 'GraphArnList')
61
74
  GraphList = Shapes::ListShape.new(name: 'GraphList')
75
+ HourlyTimeDelta = Shapes::IntegerShape.new(name: 'HourlyTimeDelta')
76
+ Id = Shapes::StringShape.new(name: 'Id')
77
+ ImpossibleTravelDetail = Shapes::StructureShape.new(name: 'ImpossibleTravelDetail')
78
+ Indicator = Shapes::StructureShape.new(name: 'Indicator')
79
+ IndicatorDetail = Shapes::StructureShape.new(name: 'IndicatorDetail')
80
+ IndicatorType = Shapes::StringShape.new(name: 'IndicatorType')
81
+ Indicators = Shapes::ListShape.new(name: 'Indicators')
62
82
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
83
+ InvestigationDetail = Shapes::StructureShape.new(name: 'InvestigationDetail')
84
+ InvestigationDetails = Shapes::ListShape.new(name: 'InvestigationDetails')
85
+ InvestigationId = Shapes::StringShape.new(name: 'InvestigationId')
63
86
  InvitationType = Shapes::StringShape.new(name: 'InvitationType')
87
+ IpAddress = Shapes::StringShape.new(name: 'IpAddress')
88
+ IsNewForEntireAccount = Shapes::BooleanShape.new(name: 'IsNewForEntireAccount')
64
89
  LastIngestStateChangeDates = Shapes::MapShape.new(name: 'LastIngestStateChangeDates')
65
90
  ListDatasourcePackagesRequest = Shapes::StructureShape.new(name: 'ListDatasourcePackagesRequest')
66
91
  ListDatasourcePackagesResponse = Shapes::StructureShape.new(name: 'ListDatasourcePackagesResponse')
67
92
  ListGraphsRequest = Shapes::StructureShape.new(name: 'ListGraphsRequest')
68
93
  ListGraphsResponse = Shapes::StructureShape.new(name: 'ListGraphsResponse')
94
+ ListIndicatorsRequest = Shapes::StructureShape.new(name: 'ListIndicatorsRequest')
95
+ ListIndicatorsResponse = Shapes::StructureShape.new(name: 'ListIndicatorsResponse')
96
+ ListInvestigationsRequest = Shapes::StructureShape.new(name: 'ListInvestigationsRequest')
97
+ ListInvestigationsResponse = Shapes::StructureShape.new(name: 'ListInvestigationsResponse')
69
98
  ListInvitationsRequest = Shapes::StructureShape.new(name: 'ListInvitationsRequest')
70
99
  ListInvitationsResponse = Shapes::StructureShape.new(name: 'ListInvitationsResponse')
71
100
  ListMembersRequest = Shapes::StructureShape.new(name: 'ListMembersRequest')
@@ -74,6 +103,8 @@ module Aws::Detective
74
103
  ListOrganizationAdminAccountsResponse = Shapes::StructureShape.new(name: 'ListOrganizationAdminAccountsResponse')
75
104
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
76
105
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
106
+ Location = Shapes::StringShape.new(name: 'Location')
107
+ MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
77
108
  MemberDetail = Shapes::StructureShape.new(name: 'MemberDetail')
78
109
  MemberDetailList = Shapes::ListShape.new(name: 'MemberDetailList')
79
110
  MemberDisabledReason = Shapes::StringShape.new(name: 'MemberDisabledReason')
@@ -81,23 +112,42 @@ module Aws::Detective
81
112
  MemberStatus = Shapes::StringShape.new(name: 'MemberStatus')
82
113
  MembershipDatasources = Shapes::StructureShape.new(name: 'MembershipDatasources')
83
114
  MembershipDatasourcesList = Shapes::ListShape.new(name: 'MembershipDatasourcesList')
115
+ NewAsoDetail = Shapes::StructureShape.new(name: 'NewAsoDetail')
116
+ NewGeolocationDetail = Shapes::StructureShape.new(name: 'NewGeolocationDetail')
117
+ NewUserAgentDetail = Shapes::StructureShape.new(name: 'NewUserAgentDetail')
84
118
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
85
119
  Percentage = Shapes::FloatShape.new(name: 'Percentage')
120
+ Procedure = Shapes::StringShape.new(name: 'Procedure')
121
+ Reason = Shapes::StringShape.new(name: 'Reason')
86
122
  RejectInvitationRequest = Shapes::StructureShape.new(name: 'RejectInvitationRequest')
123
+ RelatedFindingDetail = Shapes::StructureShape.new(name: 'RelatedFindingDetail')
124
+ RelatedFindingGroupDetail = Shapes::StructureShape.new(name: 'RelatedFindingGroupDetail')
87
125
  Resource = Shapes::StringShape.new(name: 'Resource')
88
126
  ResourceList = Shapes::ListShape.new(name: 'ResourceList')
89
127
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
90
128
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
129
+ Severity = Shapes::StringShape.new(name: 'Severity')
130
+ SortCriteria = Shapes::StructureShape.new(name: 'SortCriteria')
131
+ SortOrder = Shapes::StringShape.new(name: 'SortOrder')
132
+ StartInvestigationRequest = Shapes::StructureShape.new(name: 'StartInvestigationRequest')
133
+ StartInvestigationResponse = Shapes::StructureShape.new(name: 'StartInvestigationResponse')
91
134
  StartMonitoringMemberRequest = Shapes::StructureShape.new(name: 'StartMonitoringMemberRequest')
135
+ State = Shapes::StringShape.new(name: 'State')
136
+ Status = Shapes::StringShape.new(name: 'Status')
137
+ StringFilter = Shapes::StructureShape.new(name: 'StringFilter')
138
+ TTPsObservedDetail = Shapes::StructureShape.new(name: 'TTPsObservedDetail')
139
+ Tactic = Shapes::StringShape.new(name: 'Tactic')
92
140
  TagKey = Shapes::StringShape.new(name: 'TagKey')
93
141
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
94
142
  TagMap = Shapes::MapShape.new(name: 'TagMap')
95
143
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
96
144
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
97
145
  TagValue = Shapes::StringShape.new(name: 'TagValue')
146
+ Technique = Shapes::StringShape.new(name: 'Technique')
98
147
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp', timestampFormat: "iso8601")
99
148
  TimestampForCollection = Shapes::StructureShape.new(name: 'TimestampForCollection')
100
149
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
150
+ Type = Shapes::StringShape.new(name: 'Type')
101
151
  UnprocessedAccount = Shapes::StructureShape.new(name: 'UnprocessedAccount')
102
152
  UnprocessedAccountList = Shapes::ListShape.new(name: 'UnprocessedAccountList')
103
153
  UnprocessedGraph = Shapes::StructureShape.new(name: 'UnprocessedGraph')
@@ -106,8 +156,11 @@ module Aws::Detective
106
156
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
107
157
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
108
158
  UpdateDatasourcePackagesRequest = Shapes::StructureShape.new(name: 'UpdateDatasourcePackagesRequest')
159
+ UpdateInvestigationStateRequest = Shapes::StructureShape.new(name: 'UpdateInvestigationStateRequest')
109
160
  UpdateOrganizationConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateOrganizationConfigurationRequest')
161
+ UserAgent = Shapes::StringShape.new(name: 'UserAgent')
110
162
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
163
+ Value = Shapes::StringShape.new(name: 'Value')
111
164
  VolumeUsageByDatasourcePackage = Shapes::MapShape.new(name: 'VolumeUsageByDatasourcePackage')
112
165
 
113
166
  AcceptInvitationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
@@ -190,6 +243,10 @@ module Aws::Detective
190
243
  DatasourcePackageUsageInfo.add_member(:volume_usage_update_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "VolumeUsageUpdateTime"))
191
244
  DatasourcePackageUsageInfo.struct_class = Types::DatasourcePackageUsageInfo
192
245
 
246
+ DateFilter.add_member(:start_inclusive, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "StartInclusive"))
247
+ DateFilter.add_member(:end_inclusive, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "EndInclusive"))
248
+ DateFilter.struct_class = Types::DateFilter
249
+
193
250
  DeleteGraphRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
194
251
  DeleteGraphRequest.struct_class = Types::DeleteGraphRequest
195
252
 
@@ -213,6 +270,33 @@ module Aws::Detective
213
270
  EnableOrganizationAdminAccountRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
214
271
  EnableOrganizationAdminAccountRequest.struct_class = Types::EnableOrganizationAdminAccountRequest
215
272
 
273
+ FilterCriteria.add_member(:severity, Shapes::ShapeRef.new(shape: StringFilter, location_name: "Severity"))
274
+ FilterCriteria.add_member(:status, Shapes::ShapeRef.new(shape: StringFilter, location_name: "Status"))
275
+ FilterCriteria.add_member(:state, Shapes::ShapeRef.new(shape: StringFilter, location_name: "State"))
276
+ FilterCriteria.add_member(:entity_arn, Shapes::ShapeRef.new(shape: StringFilter, location_name: "EntityArn"))
277
+ FilterCriteria.add_member(:created_time, Shapes::ShapeRef.new(shape: DateFilter, location_name: "CreatedTime"))
278
+ FilterCriteria.struct_class = Types::FilterCriteria
279
+
280
+ FlaggedIpAddressDetail.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
281
+ FlaggedIpAddressDetail.add_member(:reason, Shapes::ShapeRef.new(shape: Reason, location_name: "Reason"))
282
+ FlaggedIpAddressDetail.struct_class = Types::FlaggedIpAddressDetail
283
+
284
+ GetInvestigationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
285
+ GetInvestigationRequest.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, required: true, location_name: "InvestigationId"))
286
+ GetInvestigationRequest.struct_class = Types::GetInvestigationRequest
287
+
288
+ GetInvestigationResponse.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, location_name: "GraphArn"))
289
+ GetInvestigationResponse.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, location_name: "InvestigationId"))
290
+ GetInvestigationResponse.add_member(:entity_arn, Shapes::ShapeRef.new(shape: EntityArn, location_name: "EntityArn"))
291
+ GetInvestigationResponse.add_member(:entity_type, Shapes::ShapeRef.new(shape: EntityType, location_name: "EntityType"))
292
+ GetInvestigationResponse.add_member(:created_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTime"))
293
+ GetInvestigationResponse.add_member(:scope_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ScopeStartTime"))
294
+ GetInvestigationResponse.add_member(:scope_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ScopeEndTime"))
295
+ GetInvestigationResponse.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
296
+ GetInvestigationResponse.add_member(:severity, Shapes::ShapeRef.new(shape: Severity, location_name: "Severity"))
297
+ GetInvestigationResponse.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "State"))
298
+ GetInvestigationResponse.struct_class = Types::GetInvestigationResponse
299
+
216
300
  GetMembersRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
217
301
  GetMembersRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIdList, required: true, location_name: "AccountIds"))
218
302
  GetMembersRequest.struct_class = Types::GetMembersRequest
@@ -229,9 +313,43 @@ module Aws::Detective
229
313
 
230
314
  GraphList.member = Shapes::ShapeRef.new(shape: Graph)
231
315
 
316
+ ImpossibleTravelDetail.add_member(:starting_ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "StartingIpAddress"))
317
+ ImpossibleTravelDetail.add_member(:ending_ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "EndingIpAddress"))
318
+ ImpossibleTravelDetail.add_member(:starting_location, Shapes::ShapeRef.new(shape: Location, location_name: "StartingLocation"))
319
+ ImpossibleTravelDetail.add_member(:ending_location, Shapes::ShapeRef.new(shape: Location, location_name: "EndingLocation"))
320
+ ImpossibleTravelDetail.add_member(:hourly_time_delta, Shapes::ShapeRef.new(shape: HourlyTimeDelta, location_name: "HourlyTimeDelta"))
321
+ ImpossibleTravelDetail.struct_class = Types::ImpossibleTravelDetail
322
+
323
+ Indicator.add_member(:indicator_type, Shapes::ShapeRef.new(shape: IndicatorType, location_name: "IndicatorType"))
324
+ Indicator.add_member(:indicator_detail, Shapes::ShapeRef.new(shape: IndicatorDetail, location_name: "IndicatorDetail"))
325
+ Indicator.struct_class = Types::Indicator
326
+
327
+ IndicatorDetail.add_member(:tt_ps_observed_detail, Shapes::ShapeRef.new(shape: TTPsObservedDetail, location_name: "TTPsObservedDetail"))
328
+ IndicatorDetail.add_member(:impossible_travel_detail, Shapes::ShapeRef.new(shape: ImpossibleTravelDetail, location_name: "ImpossibleTravelDetail"))
329
+ IndicatorDetail.add_member(:flagged_ip_address_detail, Shapes::ShapeRef.new(shape: FlaggedIpAddressDetail, location_name: "FlaggedIpAddressDetail"))
330
+ IndicatorDetail.add_member(:new_geolocation_detail, Shapes::ShapeRef.new(shape: NewGeolocationDetail, location_name: "NewGeolocationDetail"))
331
+ IndicatorDetail.add_member(:new_aso_detail, Shapes::ShapeRef.new(shape: NewAsoDetail, location_name: "NewAsoDetail"))
332
+ IndicatorDetail.add_member(:new_user_agent_detail, Shapes::ShapeRef.new(shape: NewUserAgentDetail, location_name: "NewUserAgentDetail"))
333
+ IndicatorDetail.add_member(:related_finding_detail, Shapes::ShapeRef.new(shape: RelatedFindingDetail, location_name: "RelatedFindingDetail"))
334
+ IndicatorDetail.add_member(:related_finding_group_detail, Shapes::ShapeRef.new(shape: RelatedFindingGroupDetail, location_name: "RelatedFindingGroupDetail"))
335
+ IndicatorDetail.struct_class = Types::IndicatorDetail
336
+
337
+ Indicators.member = Shapes::ShapeRef.new(shape: Indicator)
338
+
232
339
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
233
340
  InternalServerException.struct_class = Types::InternalServerException
234
341
 
342
+ InvestigationDetail.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, location_name: "InvestigationId"))
343
+ InvestigationDetail.add_member(:severity, Shapes::ShapeRef.new(shape: Severity, location_name: "Severity"))
344
+ InvestigationDetail.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
345
+ InvestigationDetail.add_member(:state, Shapes::ShapeRef.new(shape: State, location_name: "State"))
346
+ InvestigationDetail.add_member(:created_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedTime"))
347
+ InvestigationDetail.add_member(:entity_arn, Shapes::ShapeRef.new(shape: EntityArn, location_name: "EntityArn"))
348
+ InvestigationDetail.add_member(:entity_type, Shapes::ShapeRef.new(shape: EntityType, location_name: "EntityType"))
349
+ InvestigationDetail.struct_class = Types::InvestigationDetail
350
+
351
+ InvestigationDetails.member = Shapes::ShapeRef.new(shape: InvestigationDetail)
352
+
235
353
  LastIngestStateChangeDates.key = Shapes::ShapeRef.new(shape: DatasourcePackageIngestState)
236
354
  LastIngestStateChangeDates.value = Shapes::ShapeRef.new(shape: TimestampForCollection)
237
355
 
@@ -252,6 +370,30 @@ module Aws::Detective
252
370
  ListGraphsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
253
371
  ListGraphsResponse.struct_class = Types::ListGraphsResponse
254
372
 
373
+ ListIndicatorsRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
374
+ ListIndicatorsRequest.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, required: true, location_name: "InvestigationId"))
375
+ ListIndicatorsRequest.add_member(:indicator_type, Shapes::ShapeRef.new(shape: IndicatorType, location_name: "IndicatorType"))
376
+ ListIndicatorsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: AiPaginationToken, location_name: "NextToken"))
377
+ ListIndicatorsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
378
+ ListIndicatorsRequest.struct_class = Types::ListIndicatorsRequest
379
+
380
+ ListIndicatorsResponse.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, location_name: "GraphArn"))
381
+ ListIndicatorsResponse.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, location_name: "InvestigationId"))
382
+ ListIndicatorsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: AiPaginationToken, location_name: "NextToken"))
383
+ ListIndicatorsResponse.add_member(:indicators, Shapes::ShapeRef.new(shape: Indicators, location_name: "Indicators"))
384
+ ListIndicatorsResponse.struct_class = Types::ListIndicatorsResponse
385
+
386
+ ListInvestigationsRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
387
+ ListInvestigationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: AiPaginationToken, location_name: "NextToken"))
388
+ ListInvestigationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
389
+ ListInvestigationsRequest.add_member(:filter_criteria, Shapes::ShapeRef.new(shape: FilterCriteria, location_name: "FilterCriteria"))
390
+ ListInvestigationsRequest.add_member(:sort_criteria, Shapes::ShapeRef.new(shape: SortCriteria, location_name: "SortCriteria"))
391
+ ListInvestigationsRequest.struct_class = Types::ListInvestigationsRequest
392
+
393
+ ListInvestigationsResponse.add_member(:investigation_details, Shapes::ShapeRef.new(shape: InvestigationDetails, location_name: "InvestigationDetails"))
394
+ ListInvestigationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: AiPaginationToken, location_name: "NextToken"))
395
+ ListInvestigationsResponse.struct_class = Types::ListInvestigationsResponse
396
+
255
397
  ListInvitationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
256
398
  ListInvitationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MemberResultsLimit, location_name: "MaxResults"))
257
399
  ListInvitationsRequest.struct_class = Types::ListInvitationsRequest
@@ -310,9 +452,30 @@ module Aws::Detective
310
452
 
311
453
  MembershipDatasourcesList.member = Shapes::ShapeRef.new(shape: MembershipDatasources)
312
454
 
455
+ NewAsoDetail.add_member(:aso, Shapes::ShapeRef.new(shape: Aso, location_name: "Aso"))
456
+ NewAsoDetail.add_member(:is_new_for_entire_account, Shapes::ShapeRef.new(shape: IsNewForEntireAccount, location_name: "IsNewForEntireAccount"))
457
+ NewAsoDetail.struct_class = Types::NewAsoDetail
458
+
459
+ NewGeolocationDetail.add_member(:location, Shapes::ShapeRef.new(shape: Location, location_name: "Location"))
460
+ NewGeolocationDetail.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
461
+ NewGeolocationDetail.add_member(:is_new_for_entire_account, Shapes::ShapeRef.new(shape: IsNewForEntireAccount, location_name: "IsNewForEntireAccount"))
462
+ NewGeolocationDetail.struct_class = Types::NewGeolocationDetail
463
+
464
+ NewUserAgentDetail.add_member(:user_agent, Shapes::ShapeRef.new(shape: UserAgent, location_name: "UserAgent"))
465
+ NewUserAgentDetail.add_member(:is_new_for_entire_account, Shapes::ShapeRef.new(shape: IsNewForEntireAccount, location_name: "IsNewForEntireAccount"))
466
+ NewUserAgentDetail.struct_class = Types::NewUserAgentDetail
467
+
313
468
  RejectInvitationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
314
469
  RejectInvitationRequest.struct_class = Types::RejectInvitationRequest
315
470
 
471
+ RelatedFindingDetail.add_member(:arn, Shapes::ShapeRef.new(shape: EntityArn, location_name: "Arn"))
472
+ RelatedFindingDetail.add_member(:type, Shapes::ShapeRef.new(shape: Type, location_name: "Type"))
473
+ RelatedFindingDetail.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
474
+ RelatedFindingDetail.struct_class = Types::RelatedFindingDetail
475
+
476
+ RelatedFindingGroupDetail.add_member(:id, Shapes::ShapeRef.new(shape: Id, location_name: "Id"))
477
+ RelatedFindingGroupDetail.struct_class = Types::RelatedFindingGroupDetail
478
+
316
479
  ResourceList.member = Shapes::ShapeRef.new(shape: Resource)
317
480
 
318
481
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
@@ -322,10 +485,35 @@ module Aws::Detective
322
485
  ServiceQuotaExceededException.add_member(:resources, Shapes::ShapeRef.new(shape: ResourceList, location_name: "Resources"))
323
486
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
324
487
 
488
+ SortCriteria.add_member(:field, Shapes::ShapeRef.new(shape: Field, location_name: "Field"))
489
+ SortCriteria.add_member(:sort_order, Shapes::ShapeRef.new(shape: SortOrder, location_name: "SortOrder"))
490
+ SortCriteria.struct_class = Types::SortCriteria
491
+
492
+ StartInvestigationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
493
+ StartInvestigationRequest.add_member(:entity_arn, Shapes::ShapeRef.new(shape: EntityArn, required: true, location_name: "EntityArn"))
494
+ StartInvestigationRequest.add_member(:scope_start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "ScopeStartTime"))
495
+ StartInvestigationRequest.add_member(:scope_end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "ScopeEndTime"))
496
+ StartInvestigationRequest.struct_class = Types::StartInvestigationRequest
497
+
498
+ StartInvestigationResponse.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, location_name: "InvestigationId"))
499
+ StartInvestigationResponse.struct_class = Types::StartInvestigationResponse
500
+
325
501
  StartMonitoringMemberRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
326
502
  StartMonitoringMemberRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
327
503
  StartMonitoringMemberRequest.struct_class = Types::StartMonitoringMemberRequest
328
504
 
505
+ StringFilter.add_member(:value, Shapes::ShapeRef.new(shape: Value, required: true, location_name: "Value"))
506
+ StringFilter.struct_class = Types::StringFilter
507
+
508
+ TTPsObservedDetail.add_member(:tactic, Shapes::ShapeRef.new(shape: Tactic, location_name: "Tactic"))
509
+ TTPsObservedDetail.add_member(:technique, Shapes::ShapeRef.new(shape: Technique, location_name: "Technique"))
510
+ TTPsObservedDetail.add_member(:procedure, Shapes::ShapeRef.new(shape: Procedure, location_name: "Procedure"))
511
+ TTPsObservedDetail.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
512
+ TTPsObservedDetail.add_member(:api_name, Shapes::ShapeRef.new(shape: APIName, location_name: "APIName"))
513
+ TTPsObservedDetail.add_member(:api_success_count, Shapes::ShapeRef.new(shape: APISuccessCount, location_name: "APISuccessCount"))
514
+ TTPsObservedDetail.add_member(:api_failure_count, Shapes::ShapeRef.new(shape: APIFailureCount, location_name: "APIFailureCount"))
515
+ TTPsObservedDetail.struct_class = Types::TTPsObservedDetail
516
+
329
517
  TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
330
518
 
331
519
  TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
@@ -365,6 +553,11 @@ module Aws::Detective
365
553
  UpdateDatasourcePackagesRequest.add_member(:datasource_packages, Shapes::ShapeRef.new(shape: DatasourcePackageList, required: true, location_name: "DatasourcePackages"))
366
554
  UpdateDatasourcePackagesRequest.struct_class = Types::UpdateDatasourcePackagesRequest
367
555
 
556
+ UpdateInvestigationStateRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
557
+ UpdateInvestigationStateRequest.add_member(:investigation_id, Shapes::ShapeRef.new(shape: InvestigationId, required: true, location_name: "InvestigationId"))
558
+ UpdateInvestigationStateRequest.add_member(:state, Shapes::ShapeRef.new(shape: State, required: true, location_name: "State"))
559
+ UpdateInvestigationStateRequest.struct_class = Types::UpdateInvestigationStateRequest
560
+
368
561
  UpdateOrganizationConfigurationRequest.add_member(:graph_arn, Shapes::ShapeRef.new(shape: GraphArn, required: true, location_name: "GraphArn"))
369
562
  UpdateOrganizationConfigurationRequest.add_member(:auto_enable, Shapes::ShapeRef.new(shape: Boolean, location_name: "AutoEnable"))
370
563
  UpdateOrganizationConfigurationRequest.struct_class = Types::UpdateOrganizationConfigurationRequest
@@ -531,6 +724,19 @@ module Aws::Detective
531
724
  o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
532
725
  end)
533
726
 
727
+ api.add_operation(:get_investigation, Seahorse::Model::Operation.new.tap do |o|
728
+ o.name = "GetInvestigation"
729
+ o.http_method = "POST"
730
+ o.http_request_uri = "/investigations/getInvestigation"
731
+ o.input = Shapes::ShapeRef.new(shape: GetInvestigationRequest)
732
+ o.output = Shapes::ShapeRef.new(shape: GetInvestigationResponse)
733
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
734
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
735
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
736
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
737
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
738
+ end)
739
+
534
740
  api.add_operation(:get_members, Seahorse::Model::Operation.new.tap do |o|
535
741
  o.name = "GetMembers"
536
742
  o.http_method = "POST"
@@ -578,6 +784,32 @@ module Aws::Detective
578
784
  )
579
785
  end)
580
786
 
787
+ api.add_operation(:list_indicators, Seahorse::Model::Operation.new.tap do |o|
788
+ o.name = "ListIndicators"
789
+ o.http_method = "POST"
790
+ o.http_request_uri = "/investigations/listIndicators"
791
+ o.input = Shapes::ShapeRef.new(shape: ListIndicatorsRequest)
792
+ o.output = Shapes::ShapeRef.new(shape: ListIndicatorsResponse)
793
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
794
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
795
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
796
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
797
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
798
+ end)
799
+
800
+ api.add_operation(:list_investigations, Seahorse::Model::Operation.new.tap do |o|
801
+ o.name = "ListInvestigations"
802
+ o.http_method = "POST"
803
+ o.http_request_uri = "/investigations/listInvestigations"
804
+ o.input = Shapes::ShapeRef.new(shape: ListInvestigationsRequest)
805
+ o.output = Shapes::ShapeRef.new(shape: ListInvestigationsResponse)
806
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
807
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
808
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
809
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
810
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
811
+ end)
812
+
581
813
  api.add_operation(:list_invitations, Seahorse::Model::Operation.new.tap do |o|
582
814
  o.name = "ListInvitations"
583
815
  o.http_method = "POST"
@@ -656,6 +888,19 @@ module Aws::Detective
656
888
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
657
889
  end)
658
890
 
891
+ api.add_operation(:start_investigation, Seahorse::Model::Operation.new.tap do |o|
892
+ o.name = "StartInvestigation"
893
+ o.http_method = "POST"
894
+ o.http_request_uri = "/investigations/startInvestigation"
895
+ o.input = Shapes::ShapeRef.new(shape: StartInvestigationRequest)
896
+ o.output = Shapes::ShapeRef.new(shape: StartInvestigationResponse)
897
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
898
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
899
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
900
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
901
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
902
+ end)
903
+
659
904
  api.add_operation(:start_monitoring_member, Seahorse::Model::Operation.new.tap do |o|
660
905
  o.name = "StartMonitoringMember"
661
906
  o.http_method = "POST"
@@ -707,6 +952,19 @@ module Aws::Detective
707
952
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
708
953
  end)
709
954
 
955
+ api.add_operation(:update_investigation_state, Seahorse::Model::Operation.new.tap do |o|
956
+ o.name = "UpdateInvestigationState"
957
+ o.http_method = "POST"
958
+ o.http_request_uri = "/investigations/updateInvestigationState"
959
+ o.input = Shapes::ShapeRef.new(shape: UpdateInvestigationStateRequest)
960
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
961
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
962
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
963
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
964
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
965
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
966
+ end)
967
+
710
968
  api.add_operation(:update_organization_configuration, Seahorse::Model::Operation.new.tap do |o|
711
969
  o.name = "UpdateOrganizationConfiguration"
712
970
  o.http_method = "POST"
@@ -32,7 +32,7 @@ module Aws::Detective
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  return Aws::Endpoints::Endpoint.new(url: "https://api.detective-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
37
  end
38
38
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -166,6 +166,20 @@ module Aws::Detective
166
166
  end
167
167
  end
168
168
 
169
+ class GetInvestigation
170
+ def self.build(context)
171
+ unless context.config.regional_endpoint
172
+ endpoint = context.config.endpoint.to_s
173
+ end
174
+ Aws::Detective::EndpointParameters.new(
175
+ region: context.config.region,
176
+ use_dual_stack: context.config.use_dualstack_endpoint,
177
+ use_fips: context.config.use_fips_endpoint,
178
+ endpoint: endpoint,
179
+ )
180
+ end
181
+ end
182
+
169
183
  class GetMembers
170
184
  def self.build(context)
171
185
  unless context.config.regional_endpoint
@@ -208,6 +222,34 @@ module Aws::Detective
208
222
  end
209
223
  end
210
224
 
225
+ class ListIndicators
226
+ def self.build(context)
227
+ unless context.config.regional_endpoint
228
+ endpoint = context.config.endpoint.to_s
229
+ end
230
+ Aws::Detective::EndpointParameters.new(
231
+ region: context.config.region,
232
+ use_dual_stack: context.config.use_dualstack_endpoint,
233
+ use_fips: context.config.use_fips_endpoint,
234
+ endpoint: endpoint,
235
+ )
236
+ end
237
+ end
238
+
239
+ class ListInvestigations
240
+ def self.build(context)
241
+ unless context.config.regional_endpoint
242
+ endpoint = context.config.endpoint.to_s
243
+ end
244
+ Aws::Detective::EndpointParameters.new(
245
+ region: context.config.region,
246
+ use_dual_stack: context.config.use_dualstack_endpoint,
247
+ use_fips: context.config.use_fips_endpoint,
248
+ endpoint: endpoint,
249
+ )
250
+ end
251
+ end
252
+
211
253
  class ListInvitations
212
254
  def self.build(context)
213
255
  unless context.config.regional_endpoint
@@ -278,6 +320,20 @@ module Aws::Detective
278
320
  end
279
321
  end
280
322
 
323
+ class StartInvestigation
324
+ def self.build(context)
325
+ unless context.config.regional_endpoint
326
+ endpoint = context.config.endpoint.to_s
327
+ end
328
+ Aws::Detective::EndpointParameters.new(
329
+ region: context.config.region,
330
+ use_dual_stack: context.config.use_dualstack_endpoint,
331
+ use_fips: context.config.use_fips_endpoint,
332
+ endpoint: endpoint,
333
+ )
334
+ end
335
+ end
336
+
281
337
  class StartMonitoringMember
282
338
  def self.build(context)
283
339
  unless context.config.regional_endpoint
@@ -334,6 +390,20 @@ module Aws::Detective
334
390
  end
335
391
  end
336
392
 
393
+ class UpdateInvestigationState
394
+ def self.build(context)
395
+ unless context.config.regional_endpoint
396
+ endpoint = context.config.endpoint.to_s
397
+ end
398
+ Aws::Detective::EndpointParameters.new(
399
+ region: context.config.region,
400
+ use_dual_stack: context.config.use_dualstack_endpoint,
401
+ use_fips: context.config.use_fips_endpoint,
402
+ endpoint: endpoint,
403
+ )
404
+ end
405
+ end
406
+
337
407
  class UpdateOrganizationConfiguration
338
408
  def self.build(context)
339
409
  unless context.config.regional_endpoint
@@ -25,16 +25,17 @@ module Aws::Detective
25
25
  # @api private
26
26
  class Handler < Seahorse::Client::Handler
27
27
  def call(context)
28
- # If endpoint was discovered, do not resolve or apply the endpoint.
29
28
  unless context[:discovered_endpoint]
30
29
  params = parameters_for_operation(context)
31
30
  endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
31
 
33
32
  context.http_request.endpoint = endpoint.url
34
33
  apply_endpoint_headers(context, endpoint.headers)
34
+
35
+ context[:endpoint_params] = params
36
+ context[:endpoint_properties] = endpoint.properties
35
37
  end
36
38
 
37
- context[:endpoint_params] = params
38
39
  context[:auth_scheme] =
39
40
  Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
41
 
@@ -78,12 +79,18 @@ module Aws::Detective
78
79
  Aws::Detective::Endpoints::DisassociateMembership.build(context)
79
80
  when :enable_organization_admin_account
80
81
  Aws::Detective::Endpoints::EnableOrganizationAdminAccount.build(context)
82
+ when :get_investigation
83
+ Aws::Detective::Endpoints::GetInvestigation.build(context)
81
84
  when :get_members
82
85
  Aws::Detective::Endpoints::GetMembers.build(context)
83
86
  when :list_datasource_packages
84
87
  Aws::Detective::Endpoints::ListDatasourcePackages.build(context)
85
88
  when :list_graphs
86
89
  Aws::Detective::Endpoints::ListGraphs.build(context)
90
+ when :list_indicators
91
+ Aws::Detective::Endpoints::ListIndicators.build(context)
92
+ when :list_investigations
93
+ Aws::Detective::Endpoints::ListInvestigations.build(context)
87
94
  when :list_invitations
88
95
  Aws::Detective::Endpoints::ListInvitations.build(context)
89
96
  when :list_members
@@ -94,6 +101,8 @@ module Aws::Detective
94
101
  Aws::Detective::Endpoints::ListTagsForResource.build(context)
95
102
  when :reject_invitation
96
103
  Aws::Detective::Endpoints::RejectInvitation.build(context)
104
+ when :start_investigation
105
+ Aws::Detective::Endpoints::StartInvestigation.build(context)
97
106
  when :start_monitoring_member
98
107
  Aws::Detective::Endpoints::StartMonitoringMember.build(context)
99
108
  when :tag_resource
@@ -102,6 +111,8 @@ module Aws::Detective
102
111
  Aws::Detective::Endpoints::UntagResource.build(context)
103
112
  when :update_datasource_packages
104
113
  Aws::Detective::Endpoints::UpdateDatasourcePackages.build(context)
114
+ when :update_investigation_state
115
+ Aws::Detective::Endpoints::UpdateInvestigationState.build(context)
105
116
  when :update_organization_configuration
106
117
  Aws::Detective::Endpoints::UpdateOrganizationConfiguration.build(context)
107
118
  end