aws-sdk-detective 1.42.0 → 1.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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
@@ -78,12 +78,18 @@ module Aws::Detective
78
78
  Aws::Detective::Endpoints::DisassociateMembership.build(context)
79
79
  when :enable_organization_admin_account
80
80
  Aws::Detective::Endpoints::EnableOrganizationAdminAccount.build(context)
81
+ when :get_investigation
82
+ Aws::Detective::Endpoints::GetInvestigation.build(context)
81
83
  when :get_members
82
84
  Aws::Detective::Endpoints::GetMembers.build(context)
83
85
  when :list_datasource_packages
84
86
  Aws::Detective::Endpoints::ListDatasourcePackages.build(context)
85
87
  when :list_graphs
86
88
  Aws::Detective::Endpoints::ListGraphs.build(context)
89
+ when :list_indicators
90
+ Aws::Detective::Endpoints::ListIndicators.build(context)
91
+ when :list_investigations
92
+ Aws::Detective::Endpoints::ListInvestigations.build(context)
87
93
  when :list_invitations
88
94
  Aws::Detective::Endpoints::ListInvitations.build(context)
89
95
  when :list_members
@@ -94,6 +100,8 @@ module Aws::Detective
94
100
  Aws::Detective::Endpoints::ListTagsForResource.build(context)
95
101
  when :reject_invitation
96
102
  Aws::Detective::Endpoints::RejectInvitation.build(context)
103
+ when :start_investigation
104
+ Aws::Detective::Endpoints::StartInvestigation.build(context)
97
105
  when :start_monitoring_member
98
106
  Aws::Detective::Endpoints::StartMonitoringMember.build(context)
99
107
  when :tag_resource
@@ -102,6 +110,8 @@ module Aws::Detective
102
110
  Aws::Detective::Endpoints::UntagResource.build(context)
103
111
  when :update_datasource_packages
104
112
  Aws::Detective::Endpoints::UpdateDatasourcePackages.build(context)
113
+ when :update_investigation_state
114
+ Aws::Detective::Endpoints::UpdateInvestigationState.build(context)
105
115
  when :update_organization_configuration
106
116
  Aws::Detective::Endpoints::UpdateOrganizationConfiguration.build(context)
107
117
  end