From d17ac146a474953f0774ce7c5dc242e5e8378b74 Mon Sep 17 00:00:00 2001 From: aws-sdk-dotnet-automation Date: Wed, 11 Sep 2024 18:26:27 +0000 Subject: [PATCH] Add support for new statistic types in GetFindingsStatistics. --- .../guardduty/guardduty-2017-11-28.api.json | 177 +++++++++++- .../guardduty/guardduty-2017-11-28.docs.json | 160 +++++++--- .../guardduty-2017-11-28.normal.json | 273 +++++++++++++++--- .../Generated/PropertyValueRules.xml | 5 + .../Generated/Model/AccountStatistics.cs | 97 +++++++ .../Generated/Model/CreateFilterRequest.cs | 4 +- .../Generated/Model/CreateIPSetRequest.cs | 4 +- .../CreateMalwareProtectionPlanRequest.cs | 4 +- .../Generated/Model/CreateMembersRequest.cs | 4 +- .../CreatePublishingDestinationRequest.cs | 4 +- .../Model/CreateSampleFindingsRequest.cs | 2 +- .../Model/CreateThreatIntelSetRequest.cs | 4 +- .../Generated/Model/DateStatistics.cs | 120 ++++++++ .../Generated/Model/DeleteFilterRequest.cs | 2 +- .../Model/DeleteThreatIntelSetRequest.cs | 2 +- ...escribeOrganizationConfigurationRequest.cs | 3 +- .../Generated/Model/FindingStatistics.cs | 108 ++++++- .../Generated/Model/FindingTypeStatistics.cs | 97 +++++++ .../Model/GetCoverageStatisticsRequest.cs | 4 +- .../Generated/Model/GetDetectorRequest.cs | 2 +- .../Generated/Model/GetFilterRequest.cs | 2 +- .../Model/GetFindingsStatisticsRequest.cs | 82 +++++- .../Model/GetFindingsStatisticsResponse.cs | 23 ++ .../Generated/Model/GetIPSetRequest.cs | 2 +- .../Model/GetMalwareProtectionPlanResponse.cs | 4 +- .../Model/GetMalwareScanSettingsRequest.cs | 2 +- .../Model/GetMemberDetectorsRequest.cs | 2 +- .../Model/GetThreatIntelSetRequest.cs | 2 +- .../AccountStatisticsUnmarshaller.cs | 105 +++++++ .../DateStatisticsUnmarshaller.cs | 111 +++++++ .../FindingStatisticsUnmarshaller.cs | 30 ++ .../FindingTypeStatisticsUnmarshaller.cs | 105 +++++++ .../GetFindingsStatisticsRequestMarshaller.cs | 18 ++ ...tFindingsStatisticsResponseUnmarshaller.cs | 6 + .../ResourceStatisticsUnmarshaller.cs | 117 ++++++++ .../SeverityStatisticsUnmarshaller.cs | 105 +++++++ .../Generated/Model/InviteMembersRequest.cs | 4 +- .../Generated/Model/ListFiltersRequest.cs | 2 +- .../Generated/Model/ListFindingsRequest.cs | 4 + .../Generated/Model/ListIPSetsRequest.cs | 2 +- .../Generated/Model/ListMembersRequest.cs | 2 +- .../ListPublishingDestinationsRequest.cs | 2 +- .../Model/ListThreatIntelSetsRequest.cs | 2 +- .../Generated/Model/ResourceStatistics.cs | 182 ++++++++++++ .../GuardDuty/Generated/Model/Scan.cs | 4 +- .../Generated/Model/SeverityStatistics.cs | 96 ++++++ .../Model/UpdateFindingsFeedbackRequest.cs | 3 +- .../UpdateMalwareProtectionPlanRequest.cs | 4 +- .../Generated/ServiceEnumerations.cs | 62 ++++ .../Generated/_bcl35/AmazonGuardDutyClient.cs | 14 +- .../Generated/_bcl35/IAmazonGuardDuty.cs | 14 +- .../Generated/_bcl45/AmazonGuardDutyClient.cs | 28 +- .../Generated/_bcl45/IAmazonGuardDuty.cs | 28 +- .../_netstandard/AmazonGuardDutyClient.cs | 14 +- .../_netstandard/IAmazonGuardDuty.cs | 14 +- 55 files changed, 2124 insertions(+), 149 deletions(-) create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/AccountStatistics.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/DateStatistics.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/FindingTypeStatistics.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/AccountStatisticsUnmarshaller.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/DateStatisticsUnmarshaller.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingTypeStatisticsUnmarshaller.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/ResourceStatisticsUnmarshaller.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/SeverityStatisticsUnmarshaller.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/ResourceStatistics.cs create mode 100644 sdk/src/Services/GuardDuty/Generated/Model/SeverityStatistics.cs diff --git a/generator/ServiceModels/guardduty/guardduty-2017-11-28.api.json b/generator/ServiceModels/guardduty/guardduty-2017-11-28.api.json index 5b3a8254e5bf..2f1289a120b4 100644 --- a/generator/ServiceModels/guardduty/guardduty-2017-11-28.api.json +++ b/generator/ServiceModels/guardduty/guardduty-2017-11-28.api.json @@ -1243,6 +1243,23 @@ } } }, + "AccountStatistics":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"String", + "locationName":"accountId" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "locationName":"lastGeneratedAt" + }, + "TotalFindings":{ + "shape":"Integer", + "locationName":"totalFindings" + } + } + }, "Action":{ "type":"structure", "members":{ @@ -2474,6 +2491,27 @@ } } }, + "DateStatistics":{ + "type":"structure", + "members":{ + "Date":{ + "shape":"Timestamp", + "locationName":"date" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "locationName":"lastGeneratedAt" + }, + "Severity":{ + "shape":"Double", + "locationName":"severity" + }, + "TotalFindings":{ + "shape":"Integer", + "locationName":"totalFindings" + } + } + }, "DeclineInvitationsRequest":{ "type":"structure", "required":["AccountIds"], @@ -3569,7 +3607,29 @@ "members":{ "CountBySeverity":{ "shape":"CountBySeverity", + "deprecated":true, + "deprecatedMessage":"This parameter is deprecated. Please set GroupBy to 'SEVERITY' to return GroupedBySeverity instead.", "locationName":"countBySeverity" + }, + "GroupedByAccount":{ + "shape":"GroupedByAccount", + "locationName":"groupedByAccount" + }, + "GroupedByDate":{ + "shape":"GroupedByDate", + "locationName":"groupedByDate" + }, + "GroupedByFindingType":{ + "shape":"GroupedByFindingType", + "locationName":"groupedByFindingType" + }, + "GroupedByResource":{ + "shape":"GroupedByResource", + "locationName":"groupedByResource" + }, + "GroupedBySeverity":{ + "shape":"GroupedBySeverity", + "locationName":"groupedBySeverity" } } }, @@ -3578,6 +3638,23 @@ "max":50, "min":1 }, + "FindingTypeStatistics":{ + "type":"structure", + "members":{ + "FindingType":{ + "shape":"String", + "locationName":"findingType" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "locationName":"lastGeneratedAt" + }, + "TotalFindings":{ + "shape":"Integer", + "locationName":"totalFindings" + } + } + }, "FindingTypes":{ "type":"list", "member":{"shape":"FindingType"}, @@ -3843,10 +3920,7 @@ }, "GetFindingsStatisticsRequest":{ "type":"structure", - "required":[ - "DetectorId", - "FindingStatisticTypes" - ], + "required":["DetectorId"], "members":{ "DetectorId":{ "shape":"DetectorId", @@ -3855,11 +3929,25 @@ }, "FindingStatisticTypes":{ "shape":"FindingStatisticTypes", + "deprecated":true, + "deprecatedMessage":"This parameter is deprecated, please use GroupBy instead", "locationName":"findingStatisticTypes" }, "FindingCriteria":{ "shape":"FindingCriteria", "locationName":"findingCriteria" + }, + "GroupBy":{ + "shape":"GroupByType", + "locationName":"groupBy" + }, + "OrderBy":{ + "shape":"OrderBy", + "locationName":"orderBy" + }, + "MaxResults":{ + "shape":"MaxResults100", + "locationName":"maxResults" } } }, @@ -3870,6 +3958,10 @@ "FindingStatistics":{ "shape":"FindingStatistics", "locationName":"findingStatistics" + }, + "NextToken":{ + "shape":"String", + "locationName":"nextToken" } } }, @@ -4239,6 +4331,36 @@ } } }, + "GroupByType":{ + "type":"string", + "enum":[ + "ACCOUNT", + "DATE", + "FINDING_TYPE", + "RESOURCE", + "SEVERITY" + ] + }, + "GroupedByAccount":{ + "type":"list", + "member":{"shape":"AccountStatistics"} + }, + "GroupedByDate":{ + "type":"list", + "member":{"shape":"DateStatistics"} + }, + "GroupedByFindingType":{ + "type":"list", + "member":{"shape":"FindingTypeStatistics"} + }, + "GroupedByResource":{ + "type":"list", + "member":{"shape":"ResourceStatistics"} + }, + "GroupedBySeverity":{ + "type":"list", + "member":{"shape":"SeverityStatistics"} + }, "Groups":{ "type":"list", "member":{"shape":"String"} @@ -5430,6 +5552,11 @@ "max":50, "min":1 }, + "MaxResults100":{ + "type":"integer", + "max":100, + "min":1 + }, "Member":{ "type":"structure", "required":[ @@ -6456,6 +6583,31 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ResourceStatistics":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"String", + "locationName":"accountId" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "locationName":"lastGeneratedAt" + }, + "ResourceId":{ + "shape":"String", + "locationName":"resourceId" + }, + "ResourceType":{ + "shape":"String", + "locationName":"resourceType" + }, + "TotalFindings":{ + "shape":"Integer", + "locationName":"totalFindings" + } + } + }, "ResourceType":{ "type":"string", "enum":[ @@ -7045,6 +7197,23 @@ "type":"list", "member":{"shape":"String"} }, + "SeverityStatistics":{ + "type":"structure", + "members":{ + "LastGeneratedAt":{ + "shape":"Timestamp", + "locationName":"lastGeneratedAt" + }, + "Severity":{ + "shape":"Double", + "locationName":"severity" + }, + "TotalFindings":{ + "shape":"Integer", + "locationName":"totalFindings" + } + } + }, "SortCriteria":{ "type":"structure", "members":{ diff --git a/generator/ServiceModels/guardduty/guardduty-2017-11-28.docs.json b/generator/ServiceModels/guardduty/guardduty-2017-11-28.docs.json index 1d96e74a3d7d..81412ed29226 100644 --- a/generator/ServiceModels/guardduty/guardduty-2017-11-28.docs.json +++ b/generator/ServiceModels/guardduty/guardduty-2017-11-28.docs.json @@ -10,7 +10,7 @@ "CreateIPSet": "

Creates a new IPSet, which is called a trusted IP list in the console user interface. An IPSet is a list of IP addresses that are trusted for secure communication with Amazon Web Services infrastructure and applications. GuardDuty doesn't generate findings for IP addresses that are included in IPSets. Only users from the administrator account can use this operation.

", "CreateMalwareProtectionPlan": "

Creates a new Malware Protection plan for the protected resource.

When you create a Malware Protection plan, the Amazon Web Services service terms for GuardDuty Malware Protection apply. For more information, see Amazon Web Services service terms for GuardDuty Malware Protection.

", "CreateMembers": "

Creates member accounts of the current Amazon Web Services account by specifying a list of Amazon Web Services account IDs. This step is a prerequisite for managing the associated member accounts either by invitation or through an organization.

As a delegated administrator, using CreateMembers will enable GuardDuty in the added member accounts, with the exception of the organization delegated administrator account. A delegated administrator must enable GuardDuty prior to being added as a member.

When you use CreateMembers as an Organizations delegated administrator, GuardDuty applies your organization's auto-enable settings to the member accounts in this request, irrespective of the accounts being new or existing members. For more information about the existing auto-enable settings for your organization, see DescribeOrganizationConfiguration.

If you disassociate a member account that was added by invitation, the member account details obtained from this API, including the associated email addresses, will be retained. This is done so that the delegated administrator can invoke the InviteMembers API without the need to invoke the CreateMembers API again. To remove the details associated with a member account, the delegated administrator must invoke the DeleteMembers API.

When the member accounts added through Organizations are later disassociated, you (administrator) can't invite them by calling the InviteMembers API. You can create an association with these member accounts again only by calling the CreateMembers API.

", - "CreatePublishingDestination": "

Creates a publishing destination to export findings to. The resource to export findings to must exist before you use this operation.

", + "CreatePublishingDestination": "

Creates a publishing destination where you can export your GuardDuty findings. Before you start exporting the findings, the destination resource must exist.

", "CreateSampleFindings": "

Generates sample findings of types specified by the list of finding types. If 'NULL' is specified for findingTypes, the API generates sample findings of all supported finding types.

", "CreateThreatIntelSet": "

Creates a new ThreatIntelSet. ThreatIntelSets consist of known malicious IP addresses. GuardDuty generates findings based on ThreatIntelSets. Only users of the administrator account can use this operation.

", "DeclineInvitations": "

Declines invitations sent to the current member account by Amazon Web Services accounts specified by their account IDs.

", @@ -32,10 +32,10 @@ "EnableOrganizationAdminAccount": "

Designates an Amazon Web Services account within the organization as your GuardDuty delegated administrator. Only the organization's management account can run this API operation.

", "GetAdministratorAccount": "

Provides the details of the GuardDuty administrator account associated with the current GuardDuty member account.

If the organization's management account or a delegated administrator runs this API, it will return success (HTTP 200) but no content.

", "GetCoverageStatistics": "

Retrieves aggregated statistics for your account. If you are a GuardDuty administrator, you can retrieve the statistics for all the resources associated with the active member accounts in your organization who have enabled Runtime Monitoring and have the GuardDuty security agent running on their resources.

", - "GetDetector": "

Retrieves an Amazon GuardDuty detector specified by the detectorId.

There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.

", + "GetDetector": "

Retrieves a GuardDuty detector specified by the detectorId.

There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.

", "GetFilter": "

Returns the details of the filter specified by the filter name.

", "GetFindings": "

Describes Amazon GuardDuty findings specified by finding IDs.

", - "GetFindingsStatistics": "

Lists Amazon GuardDuty findings statistics for the specified detector ID.

There might be regional differences because some flags might not be available in all the Regions where GuardDuty is currently supported. For more information, see Regions and endpoints.

", + "GetFindingsStatistics": "

Lists GuardDuty findings statistics for the specified detector ID.

You must provide either findingStatisticTypes or groupBy parameter, and not both. You can use the maxResults and orderBy parameters only when using groupBy.

There might be regional differences because some flags might not be available in all the Regions where GuardDuty is currently supported. For more information, see Regions and endpoints.

", "GetIPSet": "

Retrieves the IPSet specified by the ipSetId.

", "GetInvitationsCount": "

Returns the count of all GuardDuty membership invitations that were sent to the current member account except the currently accepted invitation.

", "GetMalwareProtectionPlan": "

Retrieves the Malware Protection plan details associated with a Malware Protection plan ID.

", @@ -163,7 +163,7 @@ "DeleteInvitationsRequest$AccountIds": "

A list of account IDs of the Amazon Web Services accounts that sent invitations to the current member account that you want to delete invitations from.

", "DeleteMembersRequest$AccountIds": "

A list of account IDs of the GuardDuty member accounts that you want to delete.

", "DisassociateMembersRequest$AccountIds": "

A list of account IDs of the GuardDuty member accounts that you want to disassociate from the administrator account.

", - "GetMemberDetectorsRequest$AccountIds": "

The account ID of the member account.

", + "GetMemberDetectorsRequest$AccountIds": "

A list of member account IDs.

", "GetMembersRequest$AccountIds": "

A list of account IDs of the GuardDuty member accounts that you want to describe.

", "GetRemainingFreeTrialDaysRequest$AccountIds": "

A list of account identifiers of the GuardDuty member account.

", "InviteMembersRequest$AccountIds": "

A list of account IDs of the accounts that you want to invite to GuardDuty as members.

", @@ -179,6 +179,12 @@ "PermissionConfiguration$AccountLevelPermissions": "

Contains information about the account level permissions on the S3 bucket.

" } }, + "AccountStatistics": { + "base": "

Represents a list of map of accounts with the number of findings associated with each account.

", + "refs": { + "GroupedByAccount$member": null + } + }, "Action": { "base": "

Contains information about actions.

", "refs": { @@ -436,7 +442,7 @@ "CountBySeverity": { "base": null, "refs": { - "FindingStatistics$CountBySeverity": "

Represents a map of severity to count statistics for a set of findings.

" + "FindingStatistics$CountBySeverity": "

Represents a list of map of severity to count statistics for a set of findings.

" } }, "Country": { @@ -472,7 +478,7 @@ "CoverageFilterCriteria": { "base": "

Represents the criteria used in the filter.

", "refs": { - "GetCoverageStatisticsRequest$FilterCriteria": "

Represents the criteria used to filter the coverage statistics

", + "GetCoverageStatisticsRequest$FilterCriteria": "

Represents the criteria used to filter the coverage statistics.

", "ListCoverageRequest$FilterCriteria": "

Represents the criteria used to filter the coverage details.

" } }, @@ -716,6 +722,12 @@ "AccountFreeTrialInfo$DataSources": "

Describes the data source enabled for the GuardDuty member account.

" } }, + "DateStatistics": { + "base": "

Represents list a map of dates with a count of total findings generated on each date.

", + "refs": { + "GroupedByDate$member": null + } + }, "DeclineInvitationsRequest": { "base": null, "refs": { @@ -940,57 +952,57 @@ "ArchiveFindingsRequest$DetectorId": "

The ID of the detector that specifies the GuardDuty service whose findings you want to archive.

", "CoverageResource$DetectorId": "

The unique ID of the GuardDuty detector associated with the resource.

", "CreateDetectorResponse$DetectorId": "

The unique ID of the created detector.

", - "CreateFilterRequest$DetectorId": "

The ID of the detector belonging to the GuardDuty account that you want to create a filter for.

", - "CreateIPSetRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account that you want to create an IPSet for.

", - "CreateMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account that you want to associate member accounts with.

", + "CreateFilterRequest$DetectorId": "

The detector ID associated with the GuardDuty account for which you want to create a filter.

", + "CreateIPSetRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account for which you want to create an IPSet.

", + "CreateMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account for which you want to associate member accounts.

", "CreatePublishingDestinationRequest$DetectorId": "

The ID of the GuardDuty detector associated with the publishing destination.

", - "CreateSampleFindingsRequest$DetectorId": "

The ID of the detector to create sample findings for.

", - "CreateThreatIntelSetRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account that you want to create a threatIntelSet for.

", + "CreateSampleFindingsRequest$DetectorId": "

The ID of the detector for which you need to create sample findings.

", + "CreateThreatIntelSetRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account for which you want to create a ThreatIntelSet.

", "DeleteDetectorRequest$DetectorId": "

The unique ID of the detector that you want to delete.

", - "DeleteFilterRequest$DetectorId": "

The unique ID of the detector that the filter is associated with.

", + "DeleteFilterRequest$DetectorId": "

The unique ID of the detector that is associated with the filter.

", "DeleteIPSetRequest$DetectorId": "

The unique ID of the detector associated with the IPSet.

", "DeleteMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account whose members you want to delete.

", "DeletePublishingDestinationRequest$DetectorId": "

The unique ID of the detector associated with the publishing destination to delete.

", - "DeleteThreatIntelSetRequest$DetectorId": "

The unique ID of the detector that the threatIntelSet is associated with.

", + "DeleteThreatIntelSetRequest$DetectorId": "

The unique ID of the detector that is associated with the threatIntelSet.

", "DescribeMalwareScansRequest$DetectorId": "

The unique ID of the detector that the request is associated with.

", - "DescribeOrganizationConfigurationRequest$DetectorId": "

The ID of the detector to retrieve information about the delegated administrator from.

", + "DescribeOrganizationConfigurationRequest$DetectorId": "

The detector ID of the delegated administrator for which you need to retrieve the information.

", "DescribePublishingDestinationRequest$DetectorId": "

The unique ID of the detector associated with the publishing destination to retrieve.

", "DetectorIds$member": null, "DisassociateFromAdministratorAccountRequest$DetectorId": "

The unique ID of the detector of the GuardDuty member account.

", "DisassociateFromMasterAccountRequest$DetectorId": "

The unique ID of the detector of the GuardDuty member account.

", "DisassociateMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account whose members you want to disassociate from the administrator account.

", "GetAdministratorAccountRequest$DetectorId": "

The unique ID of the detector of the GuardDuty member account.

", - "GetCoverageStatisticsRequest$DetectorId": "

The unique ID of the GuardDuty detector associated to the coverage statistics.

", + "GetCoverageStatisticsRequest$DetectorId": "

The unique ID of the GuardDuty detector.

", "GetDetectorRequest$DetectorId": "

The unique ID of the detector that you want to get.

", - "GetFilterRequest$DetectorId": "

The unique ID of the detector that the filter is associated with.

", + "GetFilterRequest$DetectorId": "

The unique ID of the detector that is associated with this filter.

", "GetFindingsRequest$DetectorId": "

The ID of the detector that specifies the GuardDuty service whose findings you want to retrieve.

", - "GetFindingsStatisticsRequest$DetectorId": "

The ID of the detector that specifies the GuardDuty service whose findings' statistics you want to retrieve.

", - "GetIPSetRequest$DetectorId": "

The unique ID of the detector that the IPSet is associated with.

", - "GetMalwareScanSettingsRequest$DetectorId": "

The unique ID of the detector that the scan setting is associated with.

", + "GetFindingsStatisticsRequest$DetectorId": "

The ID of the detector whose findings statistics you want to retrieve.

", + "GetIPSetRequest$DetectorId": "

The unique ID of the detector that is associated with the IPSet.

", + "GetMalwareScanSettingsRequest$DetectorId": "

The unique ID of the detector that is associated with this scan.

", "GetMasterAccountRequest$DetectorId": "

The unique ID of the detector of the GuardDuty member account.

", "GetMemberDetectorsRequest$DetectorId": "

The detector ID for the administrator account.

", "GetMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account whose members you want to retrieve.

", "GetRemainingFreeTrialDaysRequest$DetectorId": "

The unique ID of the detector of the GuardDuty member account.

", - "GetThreatIntelSetRequest$DetectorId": "

The unique ID of the detector that the threatIntelSet is associated with.

", + "GetThreatIntelSetRequest$DetectorId": "

The unique ID of the detector that is associated with the threatIntelSet.

", "GetUsageStatisticsRequest$DetectorId": "

The ID of the detector that specifies the GuardDuty service whose usage statistics you want to retrieve.

", - "InviteMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account that you want to invite members with.

", + "InviteMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty account with which you want to invite members.

", "ListCoverageRequest$DetectorId": "

The unique ID of the detector whose coverage details you want to retrieve.

", - "ListFiltersRequest$DetectorId": "

The unique ID of the detector that the filter is associated with.

", + "ListFiltersRequest$DetectorId": "

The unique ID of the detector that is associated with the filter.

", "ListFindingsRequest$DetectorId": "

The ID of the detector that specifies the GuardDuty service whose findings you want to list.

", - "ListIPSetsRequest$DetectorId": "

The unique ID of the detector that the IPSet is associated with.

", - "ListMembersRequest$DetectorId": "

The unique ID of the detector the member is associated with.

", - "ListPublishingDestinationsRequest$DetectorId": "

The ID of the detector to retrieve publishing destinations for.

", - "ListThreatIntelSetsRequest$DetectorId": "

The unique ID of the detector that the threatIntelSet is associated with.

", + "ListIPSetsRequest$DetectorId": "

The unique ID of the detector that is associated with IPSet.

", + "ListMembersRequest$DetectorId": "

The unique ID of the detector that is associated with the member.

", + "ListPublishingDestinationsRequest$DetectorId": "

The detector ID for which you want to retrieve the publishing destination.

", + "ListThreatIntelSetsRequest$DetectorId": "

The unique ID of the detector that is associated with the threatIntelSet.

", "Member$DetectorId": "

The detector ID of the member account.

", "Scan$DetectorId": "

The unique ID of the detector that the request is associated with.

", - "Scan$AdminDetectorId": "

The unique detector ID of the administrator account that the request is associated with. Note that this value will be the same as the one used for DetectorId if the account is an administrator.

", + "Scan$AdminDetectorId": "

The unique detector ID of the administrator account that the request is associated with. If the account is an administrator, the AdminDetectorId will be the same as the one used for DetectorId.

", "Service$DetectorId": "

The detector ID for the GuardDuty service.

", "StartMonitoringMembersRequest$DetectorId": "

The unique ID of the detector of the GuardDuty administrator account associated with the member accounts to monitor.

", "StopMonitoringMembersRequest$DetectorId": "

The unique ID of the detector associated with the GuardDuty administrator account that is monitoring member accounts.

", "UnarchiveFindingsRequest$DetectorId": "

The ID of the detector associated with the findings to unarchive.

", "UpdateDetectorRequest$DetectorId": "

The unique ID of the detector to update.

", "UpdateFilterRequest$DetectorId": "

The unique ID of the detector that specifies the GuardDuty service where you want to update a filter.

", - "UpdateFindingsFeedbackRequest$DetectorId": "

The ID of the detector associated with the findings to update feedback for.

", + "UpdateFindingsFeedbackRequest$DetectorId": "

The ID of the detector that is associated with the findings for which you want to update the feedback.

", "UpdateIPSetRequest$DetectorId": "

The detectorID that specifies the GuardDuty service whose IPSet you want to update.

", "UpdateMalwareScanSettingsRequest$DetectorId": "

The unique ID of the detector that specifies the GuardDuty service where you want to update scan settings.

", "UpdateMemberDetectorsRequest$DetectorId": "

The detector ID of the administrator account.

", @@ -1066,10 +1078,12 @@ "Double": { "base": null, "refs": { + "DateStatistics$Severity": "

The severity of the findings generated on each date.

", "Finding$Confidence": "

The confidence score for the finding.

", "Finding$Severity": "

The severity of the finding.

", "GeoLocation$Lat": "

The latitude information of the remote IP address.

", - "GeoLocation$Lon": "

The longitude information of the remote IP address.

" + "GeoLocation$Lon": "

The longitude information of the remote IP address.

", + "SeverityStatistics$Severity": "

The severity level associated with each finding type.

" } }, "EbsSnapshotPreservation": { @@ -1265,7 +1279,7 @@ "CreateFilterRequest$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

You can only use the following attributes to query findings:

", "GetFilterResponse$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

", "GetFindingsStatisticsRequest$FindingCriteria": "

Represents the criteria that is used for querying findings.

", - "ListFindingsRequest$FindingCriteria": "

Represents the criteria used for querying findings. Valid values include:

", + "ListFindingsRequest$FindingCriteria": "

Represents the criteria used for querying findings. Valid values include:

", "UpdateFilterRequest$FindingCriteria": "

Represents the criteria to be used in the filter for querying findings.

" } }, @@ -1318,6 +1332,12 @@ "FindingTypes$member": null } }, + "FindingTypeStatistics": { + "base": "

Information about each finding type associated with the groupedByFindingType statistics.

", + "refs": { + "GroupedByFindingType$member": null + } + }, "FindingTypes": { "base": null, "refs": { @@ -1531,6 +1551,42 @@ "refs": { } }, + "GroupByType": { + "base": null, + "refs": { + "GetFindingsStatisticsRequest$GroupBy": "

Displays the findings statistics grouped by one of the listed valid values.

" + } + }, + "GroupedByAccount": { + "base": null, + "refs": { + "FindingStatistics$GroupedByAccount": "

Represents a list of map of accounts with a findings count associated with each account.

" + } + }, + "GroupedByDate": { + "base": null, + "refs": { + "FindingStatistics$GroupedByDate": "

Represents a list of map of dates with a count of total findings generated on each date per severity level.

" + } + }, + "GroupedByFindingType": { + "base": null, + "refs": { + "FindingStatistics$GroupedByFindingType": "

Represents a list of map of finding types with a count of total findings generated for each type.

Based on the orderBy parameter, this request returns either the most occurring finding types or the least occurring finding types. If the orderBy parameter is ASC, this will represent the least occurring finding types in your account; otherwise, this will represent the most occurring finding types. The default value of orderBy is DESC.

" + } + }, + "GroupedByResource": { + "base": null, + "refs": { + "FindingStatistics$GroupedByResource": "

Represents a list of map of top resources with a count of total findings.

" + } + }, + "GroupedBySeverity": { + "base": null, + "refs": { + "FindingStatistics$GroupedBySeverity": "

Represents a list of map of total findings for each severity level.

" + } + }, "Groups": { "base": null, "refs": { @@ -1585,15 +1641,18 @@ "Integer": { "base": null, "refs": { + "AccountStatistics$TotalFindings": "

The total number of findings associated with an account.

", "Condition$Gt": "

Represents a greater than condition to be applied to a single field when querying for findings.

", "Condition$Gte": "

Represents a greater than or equal condition to be applied to a single field when querying for findings.

", "Condition$Lt": "

Represents a less than condition to be applied to a single field when querying for findings.

", "Condition$Lte": "

Represents a less than or equal condition to be applied to a single field when querying for findings.

", "CountBySeverity$value": null, "DataSourceFreeTrial$FreeTrialDaysRemaining": "

A value that specifies the number of days left to use each enabled data source.

", + "DateStatistics$TotalFindings": "

The total number of findings that were generated per severity level on each date.

", "EcsClusterDetails$ActiveServicesCount": "

The number of services that are running on the cluster in an ACTIVE state.

", "EcsClusterDetails$RegisteredContainerInstancesCount": "

The number of container instances registered into the cluster.

", "EcsClusterDetails$RunningTasksCount": "

The number of tasks in the cluster that are in the RUNNING state.

", + "FindingTypeStatistics$TotalFindings": "

The total number of findings associated with generated for each distinct finding type.

", "FreeTrialFeatureConfigurationResult$FreeTrialDaysRemaining": "

The number of the remaining free trial days for the feature.

", "GetInvitationsCountResponse$InvitationsCount": "

The number of received invitations.

", "HighestSeverityThreatDetails$Count": "

Total number of infected files with the highest severity threat detected.

", @@ -1616,12 +1675,14 @@ "ProcessDetails$UserId": "

The unique ID of the user that executed the process.

", "ProcessDetails$Euid": "

The effective user ID of the user that executed the process.

", "RemotePortDetails$Port": "

The port number of the remote connection.

", + "ResourceStatistics$TotalFindings": "

The total number of findings associated with this resource.

", "RuntimeContext$IanaProtocolNumber": "

Specifies a particular protocol within the address family. Usually there is a single protocol in address families. For example, the address family AF_INET only has the IP protocol.

", "ScanThreatName$ItemCount": "

Total number of files infected with given threat.

", "ScannedItemCount$TotalGb": "

Total GB of files scanned for malware.

", "ScannedItemCount$Files": "

Number of files scanned.

", "ScannedItemCount$Volumes": "

Total number of scanned volumes.

", "Service$Count": "

The total count of the occurrences of this finding type.

", + "SeverityStatistics$TotalFindings": "

The total number of findings associated with this severity.

", "ThreatDetectedByName$ItemCount": "

Total number of infected files identified.

", "ThreatDetectedByName$UniqueThreatNameCount": "

Total number of unique threats by name identified, as part of the malware scan.

", "ThreatsDetectedItemCount$Files": "

Total number of infected files.

", @@ -2093,6 +2154,12 @@ "ListThreatIntelSetsRequest$MaxResults": "

You can use this parameter to indicate the maximum number of items that you want in the response. The default value is 50. The maximum value is 50.

" } }, + "MaxResults100": { + "base": null, + "refs": { + "GetFindingsStatisticsRequest$MaxResults": "

The maximum number of results to be returned in the response. The default value is 25.

You can use this parameter only with the groupBy parameter.

" + } + }, "Member": { "base": "

Contains information about the member account.

", "refs": { @@ -2241,6 +2308,7 @@ "base": null, "refs": { "CoverageSortCriteria$OrderBy": "

The order in which the sorted findings are to be displayed.

", + "GetFindingsStatisticsRequest$OrderBy": "

Displays the sorted findings in the requested order. The default value of orderBy is DESC.

You can use this parameter only with the groupBy parameter.

", "SortCriteria$OrderBy": "

The order by which the sorted findings are to be displayed.

" } }, @@ -2610,6 +2678,12 @@ "refs": { } }, + "ResourceStatistics": { + "base": "

Information about each resource type associated with the groupedByResource statistics.

", + "refs": { + "GroupedByResource$member": null + } + }, "ResourceType": { "base": null, "refs": { @@ -2824,6 +2898,12 @@ "KubernetesUserDetails$SessionName": "

Entity that assumes the IAM role when Kubernetes RBAC permissions are assigned to that role.

" } }, + "SeverityStatistics": { + "base": "

Information about severity level for each finding type.

", + "refs": { + "GroupedBySeverity$member": null + } + }, "SortCriteria": { "base": "

Contains information about the criteria used for sorting findings.

", "refs": { @@ -2888,6 +2968,7 @@ "AccessKeyDetails$UserName": "

The name of the user.

", "AccessKeyDetails$UserType": "

The type of the user.

", "AccountFreeTrialInfo$AccountId": "

The account identifier of the GuardDuty member account.

", + "AccountStatistics$AccountId": "

The ID of the Amazon Web Services account.

", "Action$ActionType": "

The GuardDuty finding activity type.

", "AddonDetails$AddonVersion": "

Version of the installed EKS add-on.

", "AddonDetails$AddonStatus": "

Status of the installed EKS add-on.

", @@ -2928,7 +3009,7 @@ "CoverageResource$ResourceId": "

The unique ID of the resource.

", "CoverageResource$Issue": "

Represents the reason why a coverage status was UNHEALTHY for the EKS cluster.

", "CreateIPSetResponse$IpSetId": "

The ID of the IPSet resource.

", - "CreateMalwareProtectionPlanRequest$Role": "

IAM role with permissions required to scan and add tags to the associated protected resource.

", + "CreateMalwareProtectionPlanRequest$Role": "

Amazon Resource Name (ARN) of the IAM role that has the permissions to scan and add tags to the associated protected resource.

", "CreateMalwareProtectionPlanResponse$MalwareProtectionPlanId": "

A unique identifier associated with the Malware Protection plan resource.

", "CreatePublishingDestinationResponse$DestinationId": "

The ID of the publishing destination that is created.

", "CreateS3BucketResource$BucketName": "

Name of the S3 bucket.

", @@ -2983,15 +3064,17 @@ "Finding$SchemaVersion": "

The version of the schema used for the finding.

", "Finding$Title": "

The title of the finding.

", "Finding$UpdatedAt": "

The time and date when the finding was last updated.

", + "FindingTypeStatistics$FindingType": "

Name of the finding type.

", "FlagsList$member": null, "GetDetectorResponse$CreatedAt": "

The timestamp of when the detector was created.

", "GetDetectorResponse$ServiceRole": "

The GuardDuty service role.

", "GetDetectorResponse$UpdatedAt": "

The last-updated timestamp for the detector.

", "GetFilterRequest$FilterName": "

The name of the filter you want to get.

", + "GetFindingsStatisticsResponse$NextToken": "

The pagination parameter to be used on the next list operation to retrieve more items.

This parameter is currently not supported.

", "GetIPSetRequest$IpSetId": "

The unique ID of the IPSet to retrieve.

", "GetMalwareProtectionPlanRequest$MalwareProtectionPlanId": "

A unique identifier associated with Malware Protection plan resource.

", "GetMalwareProtectionPlanResponse$Arn": "

Amazon Resource Name (ARN) of the protected resource.

", - "GetMalwareProtectionPlanResponse$Role": "

IAM role that includes the permissions required to scan and add tags to the associated protected resource.

", + "GetMalwareProtectionPlanResponse$Role": "

Amazon Resource Name (ARN) of the IAM role that includes the permissions to scan and add tags to the associated protected resource.

", "GetThreatIntelSetRequest$ThreatIntelSetId": "

The unique ID of the threatIntelSet that you want to get.

", "GetUsageStatisticsRequest$Unit": "

The currency unit you would like to view your usage statistics in. Current valid values are USD.

", "GetUsageStatisticsRequest$NextToken": "

A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

", @@ -3142,6 +3225,9 @@ "ResourceList$member": null, "ResourceNotFoundException$Message": "

The error message.

", "ResourceNotFoundException$Type": "

The error type.

", + "ResourceStatistics$AccountId": "

The ID of the Amazon Web Services account.

", + "ResourceStatistics$ResourceId": "

ID associated with each resource. The following list provides the mapping of the resource type and resource ID.

Mapping of resource and resource ID

", + "ResourceStatistics$ResourceType": "

The type of resource.

", "RuntimeContext$ScriptPath": "

The path to the script that was executed.

", "RuntimeContext$LibraryPath": "

The path to the new library that was loaded.

", "RuntimeContext$LdPreloadValue": "

The value of the LD_PRELOAD environment variable.

", @@ -3205,7 +3291,7 @@ "UpdateFindingsFeedbackRequest$Comments": "

Additional feedback about the GuardDuty findings.

", "UpdateIPSetRequest$IpSetId": "

The unique ID that specifies the IPSet that you want to update.

", "UpdateMalwareProtectionPlanRequest$MalwareProtectionPlanId": "

A unique identifier associated with the Malware Protection plan.

", - "UpdateMalwareProtectionPlanRequest$Role": "

IAM role with permissions required to scan and add tags to the associated protected resource.

", + "UpdateMalwareProtectionPlanRequest$Role": "

Amazon Resource Name (ARN) of the IAM role with permissions to scan and add tags to the associated protected resource.

", "UpdatePublishingDestinationRequest$DestinationId": "

The ID of the publishing destination to update.

", "UpdateThreatIntelSetRequest$ThreatIntelSetId": "

The unique ID that specifies the ThreatIntelSet that you want to update.

", "UsageResourceResult$Resource": "

The Amazon Web Services resource that generated usage.

", @@ -3357,7 +3443,10 @@ "Timestamp": { "base": null, "refs": { + "AccountStatistics$LastGeneratedAt": "

The timestamp at which the finding for this account was last generated.

", "CoverageResource$UpdatedAt": "

The timestamp at which the coverage details for the resource were last updated. This is in UTC format.

", + "DateStatistics$Date": "

The timestamp when the total findings count is observed.

For example, Date would look like \"2024-09-05T17:00:00-07:00\" whereas LastGeneratedAt would look like 2024-09-05T17:12:29-07:00\".

", + "DateStatistics$LastGeneratedAt": "

The timestamp at which the last finding in the findings count, was generated.

", "DetectorAdditionalConfigurationResult$UpdatedAt": "

The timestamp at which the additional configuration was last updated. This is in UTC format.

", "DetectorFeatureConfigurationResult$UpdatedAt": "

The timestamp at which the feature object was updated.

", "EbsVolumeScanDetails$ScanStartedAt": "

Returns the start date and time of the malware scan.

", @@ -3365,6 +3454,7 @@ "EcsTaskDetails$TaskCreatedAt": "

The Unix timestamp for the time when the task was created.

", "EcsTaskDetails$StartedAt": "

The Unix timestamp for the time when the task started.

", "EksClusterDetails$CreatedAt": "

The timestamp when the EKS cluster was created.

", + "FindingTypeStatistics$LastGeneratedAt": "

The timestamp at which this finding type was last generated in your environment.

", "GetMalwareProtectionPlanResponse$CreatedAt": "

The timestamp when the Malware Protection plan resource was created.

", "LambdaDetails$LastModifiedAt": "

The timestamp when the Lambda function was last modified. This field is in the UTC date string format (2023-03-22T19:37:20.168Z).

", "LineageObject$StartTime": "

The time when the process started. This is in UTC format.

", @@ -3372,10 +3462,12 @@ "MemberFeaturesConfigurationResult$UpdatedAt": "

The timestamp at which the feature object was updated.

", "OrganizationDetails$UpdatedAt": "

The timestamp at which the organization statistics was last updated. This is in UTC format.

", "ProcessDetails$StartTime": "

The time when the process started. This is in UTC format.

", + "ResourceStatistics$LastGeneratedAt": "

The timestamp at which the statistics for this resource was last generated.

", "RuntimeContext$ModifiedAt": "

The timestamp at which the process modified the current process. The timestamp is in UTC date string format.

", "S3BucketDetail$CreatedAt": "

The date and time the bucket was created at.

", "Scan$ScanStartTime": "

The timestamp of when the scan was triggered.

", - "Scan$ScanEndTime": "

The timestamp of when the scan was finished.

" + "Scan$ScanEndTime": "

The timestamp of when the scan was finished.

", + "SeverityStatistics$LastGeneratedAt": "

The timestamp at which a finding type for a specific severity was last generated.

" } }, "Total": { diff --git a/generator/ServiceModels/guardduty/guardduty-2017-11-28.normal.json b/generator/ServiceModels/guardduty/guardduty-2017-11-28.normal.json index 8100522d2ca1..3d36f7a8c8e1 100644 --- a/generator/ServiceModels/guardduty/guardduty-2017-11-28.normal.json +++ b/generator/ServiceModels/guardduty/guardduty-2017-11-28.normal.json @@ -151,7 +151,7 @@ {"shape":"BadRequestException"}, {"shape":"InternalServerErrorException"} ], - "documentation":"

Creates a publishing destination to export findings to. The resource to export findings to must exist before you use this operation.

" + "documentation":"

Creates a publishing destination where you can export your GuardDuty findings. Before you start exporting the findings, the destination resource must exist.

" }, "CreateSampleFindings":{ "name":"CreateSampleFindings", @@ -484,7 +484,7 @@ {"shape":"BadRequestException"}, {"shape":"InternalServerErrorException"} ], - "documentation":"

Retrieves an Amazon GuardDuty detector specified by the detectorId.

There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.

" + "documentation":"

Retrieves a GuardDuty detector specified by the detectorId.

There might be regional differences because some data sources might not be available in all the Amazon Web Services Regions where GuardDuty is presently supported. For more information, see Regions and endpoints.

" }, "GetFilter":{ "name":"GetFilter", @@ -529,7 +529,7 @@ {"shape":"BadRequestException"}, {"shape":"InternalServerErrorException"} ], - "documentation":"

Lists Amazon GuardDuty findings statistics for the specified detector ID.

There might be regional differences because some flags might not be available in all the Regions where GuardDuty is currently supported. For more information, see Regions and endpoints.

" + "documentation":"

Lists GuardDuty findings statistics for the specified detector ID.

You must provide either findingStatisticTypes or groupBy parameter, and not both. You can use the maxResults and orderBy parameters only when using groupBy.

There might be regional differences because some flags might not be available in all the Regions where GuardDuty is currently supported. For more information, see Regions and endpoints.

" }, "GetIPSet":{ "name":"GetIPSet", @@ -1343,6 +1343,27 @@ }, "documentation":"

Contains information about the account level permissions on the S3 bucket.

" }, + "AccountStatistics":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"String", + "documentation":"

The ID of the Amazon Web Services account.

", + "locationName":"accountId" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "documentation":"

The timestamp at which the finding for this account was last generated.

", + "locationName":"lastGeneratedAt" + }, + "TotalFindings":{ + "shape":"Integer", + "documentation":"

The total number of findings associated with an account.

", + "locationName":"totalFindings" + } + }, + "documentation":"

Represents a list of map of accounts with the number of findings associated with each account.

" + }, "Action":{ "type":"structure", "members":{ @@ -2283,7 +2304,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector belonging to the GuardDuty account that you want to create a filter for.

", + "documentation":"

The detector ID associated with the GuardDuty account for which you want to create a filter.

", "location":"uri", "locationName":"detectorId" }, @@ -2348,7 +2369,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector of the GuardDuty account that you want to create an IPSet for.

", + "documentation":"

The unique ID of the detector of the GuardDuty account for which you want to create an IPSet.

", "location":"uri", "locationName":"detectorId" }, @@ -2411,7 +2432,7 @@ }, "Role":{ "shape":"String", - "documentation":"

IAM role with permissions required to scan and add tags to the associated protected resource.

", + "documentation":"

Amazon Resource Name (ARN) of the IAM role that has the permissions to scan and add tags to the associated protected resource.

", "locationName":"role" }, "ProtectedResource":{ @@ -2450,7 +2471,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector of the GuardDuty account that you want to associate member accounts with.

", + "documentation":"

The unique ID of the detector of the GuardDuty account for which you want to associate member accounts.

", "location":"uri", "locationName":"detectorId" }, @@ -2548,7 +2569,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector to create sample findings for.

", + "documentation":"

The ID of the detector for which you need to create sample findings.

", "location":"uri", "locationName":"detectorId" }, @@ -2576,7 +2597,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector of the GuardDuty account that you want to create a threatIntelSet for.

", + "documentation":"

The unique ID of the detector of the GuardDuty account for which you want to create a ThreatIntelSet.

", "location":"uri", "locationName":"detectorId" }, @@ -2787,6 +2808,32 @@ }, "documentation":"

Contains information about which data sources are enabled for the GuardDuty member account.

" }, + "DateStatistics":{ + "type":"structure", + "members":{ + "Date":{ + "shape":"Timestamp", + "documentation":"

The timestamp when the total findings count is observed.

For example, Date would look like \"2024-09-05T17:00:00-07:00\" whereas LastGeneratedAt would look like 2024-09-05T17:12:29-07:00\".

", + "locationName":"date" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "documentation":"

The timestamp at which the last finding in the findings count, was generated.

", + "locationName":"lastGeneratedAt" + }, + "Severity":{ + "shape":"Double", + "documentation":"

The severity of the findings generated on each date.

", + "locationName":"severity" + }, + "TotalFindings":{ + "shape":"Integer", + "documentation":"

The total number of findings that were generated per severity level on each date.

", + "locationName":"totalFindings" + } + }, + "documentation":"

Represents list a map of dates with a count of total findings generated on each date.

" + }, "DeclineInvitationsRequest":{ "type":"structure", "required":["AccountIds"], @@ -2851,7 +2898,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the filter is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the filter.

", "location":"uri", "locationName":"detectorId" }, @@ -2994,7 +3041,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the threatIntelSet is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the threatIntelSet.

", "location":"uri", "locationName":"detectorId" }, @@ -3065,7 +3112,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector to retrieve information about the delegated administrator from.

", + "documentation":"

The detector ID of the delegated administrator for which you need to retrieve the information.

", "location":"uri", "locationName":"detectorId" }, @@ -4035,8 +4082,35 @@ "members":{ "CountBySeverity":{ "shape":"CountBySeverity", - "documentation":"

Represents a map of severity to count statistics for a set of findings.

", + "documentation":"

Represents a list of map of severity to count statistics for a set of findings.

", + "deprecated":true, + "deprecatedMessage":"This parameter is deprecated. Please set GroupBy to 'SEVERITY' to return GroupedBySeverity instead.", "locationName":"countBySeverity" + }, + "GroupedByAccount":{ + "shape":"GroupedByAccount", + "documentation":"

Represents a list of map of accounts with a findings count associated with each account.

", + "locationName":"groupedByAccount" + }, + "GroupedByDate":{ + "shape":"GroupedByDate", + "documentation":"

Represents a list of map of dates with a count of total findings generated on each date per severity level.

", + "locationName":"groupedByDate" + }, + "GroupedByFindingType":{ + "shape":"GroupedByFindingType", + "documentation":"

Represents a list of map of finding types with a count of total findings generated for each type.

Based on the orderBy parameter, this request returns either the most occurring finding types or the least occurring finding types. If the orderBy parameter is ASC, this will represent the least occurring finding types in your account; otherwise, this will represent the most occurring finding types. The default value of orderBy is DESC.

", + "locationName":"groupedByFindingType" + }, + "GroupedByResource":{ + "shape":"GroupedByResource", + "documentation":"

Represents a list of map of top resources with a count of total findings.

", + "locationName":"groupedByResource" + }, + "GroupedBySeverity":{ + "shape":"GroupedBySeverity", + "documentation":"

Represents a list of map of total findings for each severity level.

", + "locationName":"groupedBySeverity" } }, "documentation":"

Contains information about finding statistics.

" @@ -4046,6 +4120,27 @@ "max":50, "min":1 }, + "FindingTypeStatistics":{ + "type":"structure", + "members":{ + "FindingType":{ + "shape":"String", + "documentation":"

Name of the finding type.

", + "locationName":"findingType" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "documentation":"

The timestamp at which this finding type was last generated in your environment.

", + "locationName":"lastGeneratedAt" + }, + "TotalFindings":{ + "shape":"Integer", + "documentation":"

The total number of findings associated with generated for each distinct finding type.

", + "locationName":"totalFindings" + } + }, + "documentation":"

Information about each finding type associated with the groupedByFindingType statistics.

" + }, "FindingTypes":{ "type":"list", "member":{"shape":"FindingType"}, @@ -4158,13 +4253,13 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the GuardDuty detector associated to the coverage statistics.

", + "documentation":"

The unique ID of the GuardDuty detector.

", "location":"uri", "locationName":"detectorId" }, "FilterCriteria":{ "shape":"CoverageFilterCriteria", - "documentation":"

Represents the criteria used to filter the coverage statistics

", + "documentation":"

Represents the criteria used to filter the coverage statistics.

", "locationName":"filterCriteria" }, "StatisticsType":{ @@ -4256,7 +4351,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the filter is associated with.

", + "documentation":"

The unique ID of the detector that is associated with this filter.

", "location":"uri", "locationName":"detectorId" }, @@ -4346,26 +4441,40 @@ }, "GetFindingsStatisticsRequest":{ "type":"structure", - "required":[ - "DetectorId", - "FindingStatisticTypes" - ], + "required":["DetectorId"], "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector that specifies the GuardDuty service whose findings' statistics you want to retrieve.

", + "documentation":"

The ID of the detector whose findings statistics you want to retrieve.

", "location":"uri", "locationName":"detectorId" }, "FindingStatisticTypes":{ "shape":"FindingStatisticTypes", "documentation":"

The types of finding statistics to retrieve.

", + "deprecated":true, + "deprecatedMessage":"This parameter is deprecated, please use GroupBy instead", "locationName":"findingStatisticTypes" }, "FindingCriteria":{ "shape":"FindingCriteria", "documentation":"

Represents the criteria that is used for querying findings.

", "locationName":"findingCriteria" + }, + "GroupBy":{ + "shape":"GroupByType", + "documentation":"

Displays the findings statistics grouped by one of the listed valid values.

", + "locationName":"groupBy" + }, + "OrderBy":{ + "shape":"OrderBy", + "documentation":"

Displays the sorted findings in the requested order. The default value of orderBy is DESC.

You can use this parameter only with the groupBy parameter.

", + "locationName":"orderBy" + }, + "MaxResults":{ + "shape":"MaxResults100", + "documentation":"

The maximum number of results to be returned in the response. The default value is 25.

You can use this parameter only with the groupBy parameter.

", + "locationName":"maxResults" } } }, @@ -4377,6 +4486,11 @@ "shape":"FindingStatistics", "documentation":"

The finding statistics object.

", "locationName":"findingStatistics" + }, + "NextToken":{ + "shape":"String", + "documentation":"

The pagination parameter to be used on the next list operation to retrieve more items.

This parameter is currently not supported.

", + "locationName":"nextToken" } } }, @@ -4389,7 +4503,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the IPSet is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the IPSet.

", "location":"uri", "locationName":"detectorId" }, @@ -4474,7 +4588,7 @@ }, "Role":{ "shape":"String", - "documentation":"

IAM role that includes the permissions required to scan and add tags to the associated protected resource.

", + "documentation":"

Amazon Resource Name (ARN) of the IAM role that includes the permissions to scan and add tags to the associated protected resource.

", "locationName":"role" }, "ProtectedResource":{ @@ -4515,7 +4629,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the scan setting is associated with.

", + "documentation":"

The unique ID of the detector that is associated with this scan.

", "location":"uri", "locationName":"detectorId" } @@ -4578,7 +4692,7 @@ }, "AccountIds":{ "shape":"AccountIds", - "documentation":"

The account ID of the member account.

", + "documentation":"

A list of member account IDs.

", "locationName":"accountIds" } } @@ -4692,7 +4806,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the threatIntelSet is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the threatIntelSet.

", "location":"uri", "locationName":"detectorId" }, @@ -4796,6 +4910,36 @@ } } }, + "GroupByType":{ + "type":"string", + "enum":[ + "ACCOUNT", + "DATE", + "FINDING_TYPE", + "RESOURCE", + "SEVERITY" + ] + }, + "GroupedByAccount":{ + "type":"list", + "member":{"shape":"AccountStatistics"} + }, + "GroupedByDate":{ + "type":"list", + "member":{"shape":"DateStatistics"} + }, + "GroupedByFindingType":{ + "type":"list", + "member":{"shape":"FindingTypeStatistics"} + }, + "GroupedByResource":{ + "type":"list", + "member":{"shape":"ResourceStatistics"} + }, + "GroupedBySeverity":{ + "type":"list", + "member":{"shape":"SeverityStatistics"} + }, "Groups":{ "type":"list", "member":{"shape":"String"} @@ -5008,7 +5152,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector of the GuardDuty account that you want to invite members with.

", + "documentation":"

The unique ID of the detector of the GuardDuty account with which you want to invite members.

", "location":"uri", "locationName":"detectorId" }, @@ -5596,7 +5740,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the filter is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the filter.

", "location":"uri", "locationName":"detectorId" }, @@ -5642,7 +5786,7 @@ }, "FindingCriteria":{ "shape":"FindingCriteria", - "documentation":"

Represents the criteria used for querying findings. Valid values include:

", + "documentation":"

Represents the criteria used for querying findings. Valid values include:

", "locationName":"findingCriteria" }, "SortCriteria":{ @@ -5684,7 +5828,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the IPSet is associated with.

", + "documentation":"

The unique ID of the detector that is associated with IPSet.

", "location":"uri", "locationName":"detectorId" }, @@ -5782,7 +5926,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector the member is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the member.

", "location":"uri", "locationName":"detectorId" }, @@ -5859,7 +6003,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector to retrieve publishing destinations for.

", + "documentation":"

The detector ID for which you want to retrieve the publishing destination.

", "location":"uri", "locationName":"detectorId" }, @@ -5921,7 +6065,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The unique ID of the detector that the threatIntelSet is associated with.

", + "documentation":"

The unique ID of the detector that is associated with the threatIntelSet.

", "location":"uri", "locationName":"detectorId" }, @@ -6196,6 +6340,11 @@ "max":50, "min":1 }, + "MaxResults100":{ + "type":"integer", + "max":100, + "min":1 + }, "Member":{ "type":"structure", "required":[ @@ -7421,6 +7570,37 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ResourceStatistics":{ + "type":"structure", + "members":{ + "AccountId":{ + "shape":"String", + "documentation":"

The ID of the Amazon Web Services account.

", + "locationName":"accountId" + }, + "LastGeneratedAt":{ + "shape":"Timestamp", + "documentation":"

The timestamp at which the statistics for this resource was last generated.

", + "locationName":"lastGeneratedAt" + }, + "ResourceId":{ + "shape":"String", + "documentation":"

ID associated with each resource. The following list provides the mapping of the resource type and resource ID.

Mapping of resource and resource ID

", + "locationName":"resourceId" + }, + "ResourceType":{ + "shape":"String", + "documentation":"

The type of resource.

", + "locationName":"resourceType" + }, + "TotalFindings":{ + "shape":"Integer", + "documentation":"

The total number of findings associated with this resource.

", + "locationName":"totalFindings" + } + }, + "documentation":"

Information about each resource type associated with the groupedByResource statistics.

" + }, "ResourceType":{ "type":"string", "enum":[ @@ -7700,7 +7880,7 @@ }, "AdminDetectorId":{ "shape":"DetectorId", - "documentation":"

The unique detector ID of the administrator account that the request is associated with. Note that this value will be the same as the one used for DetectorId if the account is an administrator.

", + "documentation":"

The unique detector ID of the administrator account that the request is associated with. If the account is an administrator, the AdminDetectorId will be the same as the one used for DetectorId.

", "locationName":"adminDetectorId" }, "ScanId":{ @@ -8136,6 +8316,27 @@ "type":"list", "member":{"shape":"String"} }, + "SeverityStatistics":{ + "type":"structure", + "members":{ + "LastGeneratedAt":{ + "shape":"Timestamp", + "documentation":"

The timestamp at which a finding type for a specific severity was last generated.

", + "locationName":"lastGeneratedAt" + }, + "Severity":{ + "shape":"Double", + "documentation":"

The severity level associated with each finding type.

", + "locationName":"severity" + }, + "TotalFindings":{ + "shape":"Integer", + "documentation":"

The total number of findings associated with this severity.

", + "locationName":"totalFindings" + } + }, + "documentation":"

Information about severity level for each finding type.

" + }, "SortCriteria":{ "type":"structure", "members":{ @@ -8661,7 +8862,7 @@ "members":{ "DetectorId":{ "shape":"DetectorId", - "documentation":"

The ID of the detector associated with the findings to update feedback for.

", + "documentation":"

The ID of the detector that is associated with the findings for which you want to update the feedback.

", "location":"uri", "locationName":"detectorId" }, @@ -8740,7 +8941,7 @@ }, "Role":{ "shape":"String", - "documentation":"

IAM role with permissions required to scan and add tags to the associated protected resource.

", + "documentation":"

Amazon Resource Name (ARN) of the IAM role with permissions to scan and add tags to the associated protected resource.

", "locationName":"role" }, "Actions":{ diff --git a/sdk/code-analysis/ServiceAnalysis/GuardDuty/Generated/PropertyValueRules.xml b/sdk/code-analysis/ServiceAnalysis/GuardDuty/Generated/PropertyValueRules.xml index d8f0e1f80eed..14942142b9b4 100644 --- a/sdk/code-analysis/ServiceAnalysis/GuardDuty/Generated/PropertyValueRules.xml +++ b/sdk/code-analysis/ServiceAnalysis/GuardDuty/Generated/PropertyValueRules.xml @@ -275,6 +275,11 @@ 1 300 + + Amazon.GuardDuty.Model.GetFindingsStatisticsRequest.MaxResults + 1 + 100 + Amazon.GuardDuty.Model.GetIPSetRequest.DetectorId 1 diff --git a/sdk/src/Services/GuardDuty/Generated/Model/AccountStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/AccountStatistics.cs new file mode 100644 index 000000000000..92afaa1d28a9 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/AccountStatistics.cs @@ -0,0 +1,97 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Xml.Serialization; +using System.Text; +using System.IO; +using System.Net; + +using Amazon.Runtime; +using Amazon.Runtime.Internal; + +#pragma warning disable CS0612,CS0618,CS1570 +namespace Amazon.GuardDuty.Model +{ + /// + /// Represents a list of map of accounts with the number of findings associated with each + /// account. + /// + public partial class AccountStatistics + { + private string _accountId; + private DateTime? _lastGeneratedAt; + private int? _totalFindings; + + /// + /// Gets and sets the property AccountId. + /// + /// The ID of the Amazon Web Services account. + /// + /// + public string AccountId + { + get { return this._accountId; } + set { this._accountId = value; } + } + + // Check to see if AccountId property is set + internal bool IsSetAccountId() + { + return this._accountId != null; + } + + /// + /// Gets and sets the property LastGeneratedAt. + /// + /// The timestamp at which the finding for this account was last generated. + /// + /// + public DateTime LastGeneratedAt + { + get { return this._lastGeneratedAt.GetValueOrDefault(); } + set { this._lastGeneratedAt = value; } + } + + // Check to see if LastGeneratedAt property is set + internal bool IsSetLastGeneratedAt() + { + return this._lastGeneratedAt.HasValue; + } + + /// + /// Gets and sets the property TotalFindings. + /// + /// The total number of findings associated with an account. + /// + /// + public int TotalFindings + { + get { return this._totalFindings.GetValueOrDefault(); } + set { this._totalFindings = value; } + } + + // Check to see if TotalFindings property is set + internal bool IsSetTotalFindings() + { + return this._totalFindings.HasValue; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateFilterRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateFilterRequest.cs index 4b544a1e00b6..be8fbce640b5 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateFilterRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateFilterRequest.cs @@ -110,8 +110,8 @@ internal bool IsSetDescription() /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector belonging to the GuardDuty account that you want to create - /// a filter for. + /// The detector ID associated with the GuardDuty account for which you want to create + /// a filter. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateIPSetRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateIPSetRequest.cs index b0bc48d8b50d..7de65b5f4218 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateIPSetRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateIPSetRequest.cs @@ -88,8 +88,8 @@ internal bool IsSetClientToken() /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector of the GuardDuty account that you want to create an - /// IPSet for. + /// The unique ID of the detector of the GuardDuty account for which you want to create + /// an IPSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateMalwareProtectionPlanRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateMalwareProtectionPlanRequest.cs index cee3b6394852..3feafd282bc9 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateMalwareProtectionPlanRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateMalwareProtectionPlanRequest.cs @@ -108,8 +108,8 @@ internal bool IsSetProtectedResource() /// /// Gets and sets the property Role. /// - /// IAM role with permissions required to scan and add tags to the associated protected - /// resource. + /// Amazon Resource Name (ARN) of the IAM role that has the permissions to scan and add + /// tags to the associated protected resource. /// /// [AWSProperty(Required=true)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateMembersRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateMembersRequest.cs index 099d61fcda70..c44a47aab0ed 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateMembersRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateMembersRequest.cs @@ -94,8 +94,8 @@ internal bool IsSetAccountDetails() /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector of the GuardDuty account that you want to associate - /// member accounts with. + /// The unique ID of the detector of the GuardDuty account for which you want to associate + /// member accounts. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreatePublishingDestinationRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreatePublishingDestinationRequest.cs index a9dfaf9c6b9f..f1c074595cd9 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreatePublishingDestinationRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreatePublishingDestinationRequest.cs @@ -31,8 +31,8 @@ namespace Amazon.GuardDuty.Model { /// /// Container for the parameters to the CreatePublishingDestination operation. - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// public partial class CreatePublishingDestinationRequest : AmazonGuardDutyRequest { diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateSampleFindingsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateSampleFindingsRequest.cs index 72fe709b8363..8f8bd542c62d 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateSampleFindingsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateSampleFindingsRequest.cs @@ -43,7 +43,7 @@ public partial class CreateSampleFindingsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector to create sample findings for. + /// The ID of the detector for which you need to create sample findings. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/CreateThreatIntelSetRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/CreateThreatIntelSetRequest.cs index d3549977d1e5..22b471250260 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/CreateThreatIntelSetRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/CreateThreatIntelSetRequest.cs @@ -86,8 +86,8 @@ internal bool IsSetClientToken() /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector of the GuardDuty account that you want to create a threatIntelSet - /// for. + /// The unique ID of the detector of the GuardDuty account for which you want to create + /// a ThreatIntelSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/DateStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/DateStatistics.cs new file mode 100644 index 000000000000..c69a0b79f9cf --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/DateStatistics.cs @@ -0,0 +1,120 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Xml.Serialization; +using System.Text; +using System.IO; +using System.Net; + +using Amazon.Runtime; +using Amazon.Runtime.Internal; + +#pragma warning disable CS0612,CS0618,CS1570 +namespace Amazon.GuardDuty.Model +{ + /// + /// Represents list a map of dates with a count of total findings generated on each date. + /// + public partial class DateStatistics + { + private DateTime? _date; + private DateTime? _lastGeneratedAt; + private double? _severity; + private int? _totalFindings; + + /// + /// Gets and sets the property Date. + /// + /// The timestamp when the total findings count is observed. + /// + /// + /// + /// For example, Date would look like "2024-09-05T17:00:00-07:00" whereas + /// LastGeneratedAt would look like 2024-09-05T17:12:29-07:00". + /// + /// + public DateTime Date + { + get { return this._date.GetValueOrDefault(); } + set { this._date = value; } + } + + // Check to see if Date property is set + internal bool IsSetDate() + { + return this._date.HasValue; + } + + /// + /// Gets and sets the property LastGeneratedAt. + /// + /// The timestamp at which the last finding in the findings count, was generated. + /// + /// + public DateTime LastGeneratedAt + { + get { return this._lastGeneratedAt.GetValueOrDefault(); } + set { this._lastGeneratedAt = value; } + } + + // Check to see if LastGeneratedAt property is set + internal bool IsSetLastGeneratedAt() + { + return this._lastGeneratedAt.HasValue; + } + + /// + /// Gets and sets the property Severity. + /// + /// The severity of the findings generated on each date. + /// + /// + public double Severity + { + get { return this._severity.GetValueOrDefault(); } + set { this._severity = value; } + } + + // Check to see if Severity property is set + internal bool IsSetSeverity() + { + return this._severity.HasValue; + } + + /// + /// Gets and sets the property TotalFindings. + /// + /// The total number of findings that were generated per severity level on each date. + /// + /// + public int TotalFindings + { + get { return this._totalFindings.GetValueOrDefault(); } + set { this._totalFindings = value; } + } + + // Check to see if TotalFindings property is set + internal bool IsSetTotalFindings() + { + return this._totalFindings.HasValue; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/DeleteFilterRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/DeleteFilterRequest.cs index f5208704838d..7e1756027dc2 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/DeleteFilterRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/DeleteFilterRequest.cs @@ -41,7 +41,7 @@ public partial class DeleteFilterRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the filter is associated with. + /// The unique ID of the detector that is associated with the filter. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/DeleteThreatIntelSetRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/DeleteThreatIntelSetRequest.cs index f20e853965a5..e900918dbeb6 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/DeleteThreatIntelSetRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/DeleteThreatIntelSetRequest.cs @@ -41,7 +41,7 @@ public partial class DeleteThreatIntelSetRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the threatIntelSet is associated with. + /// The unique ID of the detector that is associated with the threatIntelSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/DescribeOrganizationConfigurationRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/DescribeOrganizationConfigurationRequest.cs index a63a86bcf687..b840c8bca614 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/DescribeOrganizationConfigurationRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/DescribeOrganizationConfigurationRequest.cs @@ -51,7 +51,8 @@ public partial class DescribeOrganizationConfigurationRequest : AmazonGuardDutyR /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector to retrieve information about the delegated administrator from. + /// The detector ID of the delegated administrator for which you need to retrieve the + /// information. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/FindingStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/FindingStatistics.cs index ee5a862d0f07..ceddb9a77354 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/FindingStatistics.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/FindingStatistics.cs @@ -35,13 +35,19 @@ namespace Amazon.GuardDuty.Model public partial class FindingStatistics { private Dictionary _countBySeverity = AWSConfigs.InitializeCollections ? new Dictionary() : null; + private List _groupedByAccount = AWSConfigs.InitializeCollections ? new List() : null; + private List _groupedByDate = AWSConfigs.InitializeCollections ? new List() : null; + private List _groupedByFindingType = AWSConfigs.InitializeCollections ? new List() : null; + private List _groupedByResource = AWSConfigs.InitializeCollections ? new List() : null; + private List _groupedBySeverity = AWSConfigs.InitializeCollections ? new List() : null; /// /// Gets and sets the property CountBySeverity. /// - /// Represents a map of severity to count statistics for a set of findings. + /// Represents a list of map of severity to count statistics for a set of findings. /// /// + [Obsolete("This parameter is deprecated. Please set GroupBy to 'SEVERITY' to return GroupedBySeverity instead.")] public Dictionary CountBySeverity { get { return this._countBySeverity; } @@ -54,5 +60,105 @@ internal bool IsSetCountBySeverity() return this._countBySeverity != null && (this._countBySeverity.Count > 0 || !AWSConfigs.InitializeCollections); } + /// + /// Gets and sets the property GroupedByAccount. + /// + /// Represents a list of map of accounts with a findings count associated with each account. + /// + /// + public List GroupedByAccount + { + get { return this._groupedByAccount; } + set { this._groupedByAccount = value; } + } + + // Check to see if GroupedByAccount property is set + internal bool IsSetGroupedByAccount() + { + return this._groupedByAccount != null && (this._groupedByAccount.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property GroupedByDate. + /// + /// Represents a list of map of dates with a count of total findings generated on each + /// date per severity level. + /// + /// + public List GroupedByDate + { + get { return this._groupedByDate; } + set { this._groupedByDate = value; } + } + + // Check to see if GroupedByDate property is set + internal bool IsSetGroupedByDate() + { + return this._groupedByDate != null && (this._groupedByDate.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property GroupedByFindingType. + /// + /// Represents a list of map of finding types with a count of total findings generated + /// for each type. + /// + /// + /// + /// Based on the orderBy parameter, this request returns either the most occurring + /// finding types or the least occurring finding types. If the orderBy parameter + /// is ASC, this will represent the least occurring finding types in your account; + /// otherwise, this will represent the most occurring finding types. The default value + /// of orderBy is DESC. + /// + /// + public List GroupedByFindingType + { + get { return this._groupedByFindingType; } + set { this._groupedByFindingType = value; } + } + + // Check to see if GroupedByFindingType property is set + internal bool IsSetGroupedByFindingType() + { + return this._groupedByFindingType != null && (this._groupedByFindingType.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property GroupedByResource. + /// + /// Represents a list of map of top resources with a count of total findings. + /// + /// + public List GroupedByResource + { + get { return this._groupedByResource; } + set { this._groupedByResource = value; } + } + + // Check to see if GroupedByResource property is set + internal bool IsSetGroupedByResource() + { + return this._groupedByResource != null && (this._groupedByResource.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property GroupedBySeverity. + /// + /// Represents a list of map of total findings for each severity level. + /// + /// + public List GroupedBySeverity + { + get { return this._groupedBySeverity; } + set { this._groupedBySeverity = value; } + } + + // Check to see if GroupedBySeverity property is set + internal bool IsSetGroupedBySeverity() + { + return this._groupedBySeverity != null && (this._groupedBySeverity.Count > 0 || !AWSConfigs.InitializeCollections); + } + } } \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/FindingTypeStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/FindingTypeStatistics.cs new file mode 100644 index 000000000000..ec10ac01695b --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/FindingTypeStatistics.cs @@ -0,0 +1,97 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Xml.Serialization; +using System.Text; +using System.IO; +using System.Net; + +using Amazon.Runtime; +using Amazon.Runtime.Internal; + +#pragma warning disable CS0612,CS0618,CS1570 +namespace Amazon.GuardDuty.Model +{ + /// + /// Information about each finding type associated with the groupedByFindingType + /// statistics. + /// + public partial class FindingTypeStatistics + { + private string _findingType; + private DateTime? _lastGeneratedAt; + private int? _totalFindings; + + /// + /// Gets and sets the property FindingType. + /// + /// Name of the finding type. + /// + /// + public string FindingType + { + get { return this._findingType; } + set { this._findingType = value; } + } + + // Check to see if FindingType property is set + internal bool IsSetFindingType() + { + return this._findingType != null; + } + + /// + /// Gets and sets the property LastGeneratedAt. + /// + /// The timestamp at which this finding type was last generated in your environment. + /// + /// + public DateTime LastGeneratedAt + { + get { return this._lastGeneratedAt.GetValueOrDefault(); } + set { this._lastGeneratedAt = value; } + } + + // Check to see if LastGeneratedAt property is set + internal bool IsSetLastGeneratedAt() + { + return this._lastGeneratedAt.HasValue; + } + + /// + /// Gets and sets the property TotalFindings. + /// + /// The total number of findings associated with generated for each distinct finding type. + /// + /// + public int TotalFindings + { + get { return this._totalFindings.GetValueOrDefault(); } + set { this._totalFindings = value; } + } + + // Check to see if TotalFindings property is set + internal bool IsSetTotalFindings() + { + return this._totalFindings.HasValue; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetCoverageStatisticsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetCoverageStatisticsRequest.cs index ff5dddd207e3..9739c66d5781 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetCoverageStatisticsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetCoverageStatisticsRequest.cs @@ -45,7 +45,7 @@ public partial class GetCoverageStatisticsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the GuardDuty detector associated to the coverage statistics. + /// The unique ID of the GuardDuty detector. /// /// [AWSProperty(Required=true, Min=1, Max=300)] @@ -64,7 +64,7 @@ internal bool IsSetDetectorId() /// /// Gets and sets the property FilterCriteria. /// - /// Represents the criteria used to filter the coverage statistics + /// Represents the criteria used to filter the coverage statistics. /// /// public CoverageFilterCriteria FilterCriteria diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetDetectorRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetDetectorRequest.cs index 0f0436866698..a357339c6192 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetDetectorRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetDetectorRequest.cs @@ -31,7 +31,7 @@ namespace Amazon.GuardDuty.Model { /// /// Container for the parameters to the GetDetector operation. - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetFilterRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetFilterRequest.cs index c846e996f155..1b511a2a8824 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetFilterRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetFilterRequest.cs @@ -41,7 +41,7 @@ public partial class GetFilterRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the filter is associated with. + /// The unique ID of the detector that is associated with this filter. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsRequest.cs index a129a33a7665..f4718f223e8d 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsRequest.cs @@ -31,10 +31,16 @@ namespace Amazon.GuardDuty.Model { /// /// Container for the parameters to the GetFindingsStatistics operation. - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. @@ -45,12 +51,14 @@ public partial class GetFindingsStatisticsRequest : AmazonGuardDutyRequest private string _detectorId; private FindingCriteria _findingCriteria; private List _findingStatisticTypes = AWSConfigs.InitializeCollections ? new List() : null; + private GroupByType _groupBy; + private int? _maxResults; + private OrderBy _orderBy; /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector that specifies the GuardDuty service whose findings' statistics - /// you want to retrieve. + /// The ID of the detector whose findings statistics you want to retrieve. /// /// [AWSProperty(Required=true, Min=1, Max=300)] @@ -90,7 +98,8 @@ internal bool IsSetFindingCriteria() /// The types of finding statistics to retrieve. /// /// - [AWSProperty(Required=true, Min=0, Max=10)] + [Obsolete("This parameter is deprecated, please use GroupBy instead")] + [AWSProperty(Min=0, Max=10)] public List FindingStatisticTypes { get { return this._findingStatisticTypes; } @@ -103,5 +112,70 @@ internal bool IsSetFindingStatisticTypes() return this._findingStatisticTypes != null && (this._findingStatisticTypes.Count > 0 || !AWSConfigs.InitializeCollections); } + /// + /// Gets and sets the property GroupBy. + /// + /// Displays the findings statistics grouped by one of the listed valid values. + /// + /// + public GroupByType GroupBy + { + get { return this._groupBy; } + set { this._groupBy = value; } + } + + // Check to see if GroupBy property is set + internal bool IsSetGroupBy() + { + return this._groupBy != null; + } + + /// + /// Gets and sets the property MaxResults. + /// + /// The maximum number of results to be returned in the response. The default value is + /// 25. + /// + /// + /// + /// You can use this parameter only with the groupBy parameter. + /// + /// + [AWSProperty(Min=1, Max=100)] + public int MaxResults + { + get { return this._maxResults.GetValueOrDefault(); } + set { this._maxResults = value; } + } + + // Check to see if MaxResults property is set + internal bool IsSetMaxResults() + { + return this._maxResults.HasValue; + } + + /// + /// Gets and sets the property OrderBy. + /// + /// Displays the sorted findings in the requested order. The default value of orderBy + /// is DESC. + /// + /// + /// + /// You can use this parameter only with the groupBy parameter. + /// + /// + public OrderBy OrderBy + { + get { return this._orderBy; } + set { this._orderBy = value; } + } + + // Check to see if OrderBy property is set + internal bool IsSetOrderBy() + { + return this._orderBy != null; + } + } } \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsResponse.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsResponse.cs index 9a343bea6ffc..af4823736f63 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsResponse.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetFindingsStatisticsResponse.cs @@ -35,6 +35,7 @@ namespace Amazon.GuardDuty.Model public partial class GetFindingsStatisticsResponse : AmazonWebServiceResponse { private FindingStatistics _findingStatistics; + private string _nextToken; /// /// Gets and sets the property FindingStatistics. @@ -55,5 +56,27 @@ internal bool IsSetFindingStatistics() return this._findingStatistics != null; } + /// + /// Gets and sets the property NextToken. + /// + /// The pagination parameter to be used on the next list operation to retrieve more items. + /// + /// + /// + /// This parameter is currently not supported. + /// + /// + public string NextToken + { + get { return this._nextToken; } + set { this._nextToken = value; } + } + + // Check to see if NextToken property is set + internal bool IsSetNextToken() + { + return this._nextToken != null; + } + } } \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetIPSetRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetIPSetRequest.cs index d75e28718eac..20b06e6d9cf3 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetIPSetRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetIPSetRequest.cs @@ -41,7 +41,7 @@ public partial class GetIPSetRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the IPSet is associated with. + /// The unique ID of the detector that is associated with the IPSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareProtectionPlanResponse.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareProtectionPlanResponse.cs index ecbf12b66a35..56bb82e1211e 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareProtectionPlanResponse.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareProtectionPlanResponse.cs @@ -119,8 +119,8 @@ internal bool IsSetProtectedResource() /// /// Gets and sets the property Role. /// - /// IAM role that includes the permissions required to scan and add tags to the associated - /// protected resource. + /// Amazon Resource Name (ARN) of the IAM role that includes the permissions to scan and + /// add tags to the associated protected resource. /// /// public string Role diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareScanSettingsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareScanSettingsRequest.cs index ee3db44f4c2a..341515e81d13 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareScanSettingsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetMalwareScanSettingsRequest.cs @@ -48,7 +48,7 @@ public partial class GetMalwareScanSettingsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the scan setting is associated with. + /// The unique ID of the detector that is associated with this scan. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetMemberDetectorsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetMemberDetectorsRequest.cs index 9eea28d5c0eb..8f35752c0711 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetMemberDetectorsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetMemberDetectorsRequest.cs @@ -49,7 +49,7 @@ public partial class GetMemberDetectorsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property AccountIds. /// - /// The account ID of the member account. + /// A list of member account IDs. /// /// [AWSProperty(Required=true, Min=1, Max=50)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/GetThreatIntelSetRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/GetThreatIntelSetRequest.cs index f0e404b115b3..62f280d6c886 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/GetThreatIntelSetRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/GetThreatIntelSetRequest.cs @@ -41,7 +41,7 @@ public partial class GetThreatIntelSetRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the threatIntelSet is associated with. + /// The unique ID of the detector that is associated with the threatIntelSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/AccountStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/AccountStatisticsUnmarshaller.cs new file mode 100644 index 000000000000..8154bdf5a1fd --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/AccountStatisticsUnmarshaller.cs @@ -0,0 +1,105 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Text; +using System.Xml.Serialization; + +using Amazon.GuardDuty.Model; +using Amazon.Runtime; +using Amazon.Runtime.Internal; +using Amazon.Runtime.Internal.Transform; +using Amazon.Runtime.Internal.Util; +using ThirdParty.Json.LitJson; + +#pragma warning disable CS0612,CS0618 +namespace Amazon.GuardDuty.Model.Internal.MarshallTransformations +{ + /// + /// Response Unmarshaller for AccountStatistics Object + /// + public class AccountStatisticsUnmarshaller : IUnmarshaller, IUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + AccountStatistics IUnmarshaller.Unmarshall(XmlUnmarshallerContext context) + { + throw new NotImplementedException(); + } + + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// The unmarshalled object + public AccountStatistics Unmarshall(JsonUnmarshallerContext context) + { + AccountStatistics unmarshalledObject = new AccountStatistics(); + if (context.IsEmptyResponse) + return null; + context.Read(); + if (context.CurrentTokenType == JsonToken.Null) + return null; + + int targetDepth = context.CurrentDepth; + while (context.ReadAtDepth(targetDepth)) + { + if (context.TestExpression("accountId", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.AccountId = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("lastGeneratedAt", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.LastGeneratedAt = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("totalFindings", targetDepth)) + { + var unmarshaller = IntUnmarshaller.Instance; + unmarshalledObject.TotalFindings = unmarshaller.Unmarshall(context); + continue; + } + } + return unmarshalledObject; + } + + + private static AccountStatisticsUnmarshaller _instance = new AccountStatisticsUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static AccountStatisticsUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/DateStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/DateStatisticsUnmarshaller.cs new file mode 100644 index 000000000000..f44b8689ffd5 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/DateStatisticsUnmarshaller.cs @@ -0,0 +1,111 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Text; +using System.Xml.Serialization; + +using Amazon.GuardDuty.Model; +using Amazon.Runtime; +using Amazon.Runtime.Internal; +using Amazon.Runtime.Internal.Transform; +using Amazon.Runtime.Internal.Util; +using ThirdParty.Json.LitJson; + +#pragma warning disable CS0612,CS0618 +namespace Amazon.GuardDuty.Model.Internal.MarshallTransformations +{ + /// + /// Response Unmarshaller for DateStatistics Object + /// + public class DateStatisticsUnmarshaller : IUnmarshaller, IUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + DateStatistics IUnmarshaller.Unmarshall(XmlUnmarshallerContext context) + { + throw new NotImplementedException(); + } + + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// The unmarshalled object + public DateStatistics Unmarshall(JsonUnmarshallerContext context) + { + DateStatistics unmarshalledObject = new DateStatistics(); + if (context.IsEmptyResponse) + return null; + context.Read(); + if (context.CurrentTokenType == JsonToken.Null) + return null; + + int targetDepth = context.CurrentDepth; + while (context.ReadAtDepth(targetDepth)) + { + if (context.TestExpression("date", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.Date = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("lastGeneratedAt", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.LastGeneratedAt = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("severity", targetDepth)) + { + var unmarshaller = DoubleUnmarshaller.Instance; + unmarshalledObject.Severity = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("totalFindings", targetDepth)) + { + var unmarshaller = IntUnmarshaller.Instance; + unmarshalledObject.TotalFindings = unmarshaller.Unmarshall(context); + continue; + } + } + return unmarshalledObject; + } + + + private static DateStatisticsUnmarshaller _instance = new DateStatisticsUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static DateStatisticsUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingStatisticsUnmarshaller.cs index 99dafb8fafdf..ff0c7d449440 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingStatisticsUnmarshaller.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingStatisticsUnmarshaller.cs @@ -72,6 +72,36 @@ public FindingStatistics Unmarshall(JsonUnmarshallerContext context) unmarshalledObject.CountBySeverity = unmarshaller.Unmarshall(context); continue; } + if (context.TestExpression("groupedByAccount", targetDepth)) + { + var unmarshaller = new ListUnmarshaller(AccountStatisticsUnmarshaller.Instance); + unmarshalledObject.GroupedByAccount = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("groupedByDate", targetDepth)) + { + var unmarshaller = new ListUnmarshaller(DateStatisticsUnmarshaller.Instance); + unmarshalledObject.GroupedByDate = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("groupedByFindingType", targetDepth)) + { + var unmarshaller = new ListUnmarshaller(FindingTypeStatisticsUnmarshaller.Instance); + unmarshalledObject.GroupedByFindingType = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("groupedByResource", targetDepth)) + { + var unmarshaller = new ListUnmarshaller(ResourceStatisticsUnmarshaller.Instance); + unmarshalledObject.GroupedByResource = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("groupedBySeverity", targetDepth)) + { + var unmarshaller = new ListUnmarshaller(SeverityStatisticsUnmarshaller.Instance); + unmarshalledObject.GroupedBySeverity = unmarshaller.Unmarshall(context); + continue; + } } return unmarshalledObject; } diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingTypeStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingTypeStatisticsUnmarshaller.cs new file mode 100644 index 000000000000..cf15727ffa25 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/FindingTypeStatisticsUnmarshaller.cs @@ -0,0 +1,105 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Text; +using System.Xml.Serialization; + +using Amazon.GuardDuty.Model; +using Amazon.Runtime; +using Amazon.Runtime.Internal; +using Amazon.Runtime.Internal.Transform; +using Amazon.Runtime.Internal.Util; +using ThirdParty.Json.LitJson; + +#pragma warning disable CS0612,CS0618 +namespace Amazon.GuardDuty.Model.Internal.MarshallTransformations +{ + /// + /// Response Unmarshaller for FindingTypeStatistics Object + /// + public class FindingTypeStatisticsUnmarshaller : IUnmarshaller, IUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + FindingTypeStatistics IUnmarshaller.Unmarshall(XmlUnmarshallerContext context) + { + throw new NotImplementedException(); + } + + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// The unmarshalled object + public FindingTypeStatistics Unmarshall(JsonUnmarshallerContext context) + { + FindingTypeStatistics unmarshalledObject = new FindingTypeStatistics(); + if (context.IsEmptyResponse) + return null; + context.Read(); + if (context.CurrentTokenType == JsonToken.Null) + return null; + + int targetDepth = context.CurrentDepth; + while (context.ReadAtDepth(targetDepth)) + { + if (context.TestExpression("findingType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.FindingType = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("lastGeneratedAt", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.LastGeneratedAt = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("totalFindings", targetDepth)) + { + var unmarshaller = IntUnmarshaller.Instance; + unmarshalledObject.TotalFindings = unmarshaller.Unmarshall(context); + continue; + } + } + return unmarshalledObject; + } + + + private static FindingTypeStatisticsUnmarshaller _instance = new FindingTypeStatisticsUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static FindingTypeStatisticsUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsRequestMarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsRequestMarshaller.cs index 94cd0663066a..f9982316f516 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsRequestMarshaller.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsRequestMarshaller.cs @@ -92,6 +92,24 @@ public IRequest Marshall(GetFindingsStatisticsRequest publicRequest) context.Writer.WriteArrayEnd(); } + if(publicRequest.IsSetGroupBy()) + { + context.Writer.WritePropertyName("groupBy"); + context.Writer.Write(publicRequest.GroupBy); + } + + if(publicRequest.IsSetMaxResults()) + { + context.Writer.WritePropertyName("maxResults"); + context.Writer.Write(publicRequest.MaxResults); + } + + if(publicRequest.IsSetOrderBy()) + { + context.Writer.WritePropertyName("orderBy"); + context.Writer.Write(publicRequest.OrderBy); + } + writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsResponseUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsResponseUnmarshaller.cs index 5a31241690e4..0e2b361f0c90 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsResponseUnmarshaller.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/GetFindingsStatisticsResponseUnmarshaller.cs @@ -58,6 +58,12 @@ public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext cont response.FindingStatistics = unmarshaller.Unmarshall(context); continue; } + if (context.TestExpression("nextToken", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.NextToken = unmarshaller.Unmarshall(context); + continue; + } } return response; diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/ResourceStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/ResourceStatisticsUnmarshaller.cs new file mode 100644 index 000000000000..ab4908d22886 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/ResourceStatisticsUnmarshaller.cs @@ -0,0 +1,117 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Text; +using System.Xml.Serialization; + +using Amazon.GuardDuty.Model; +using Amazon.Runtime; +using Amazon.Runtime.Internal; +using Amazon.Runtime.Internal.Transform; +using Amazon.Runtime.Internal.Util; +using ThirdParty.Json.LitJson; + +#pragma warning disable CS0612,CS0618 +namespace Amazon.GuardDuty.Model.Internal.MarshallTransformations +{ + /// + /// Response Unmarshaller for ResourceStatistics Object + /// + public class ResourceStatisticsUnmarshaller : IUnmarshaller, IUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + ResourceStatistics IUnmarshaller.Unmarshall(XmlUnmarshallerContext context) + { + throw new NotImplementedException(); + } + + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// The unmarshalled object + public ResourceStatistics Unmarshall(JsonUnmarshallerContext context) + { + ResourceStatistics unmarshalledObject = new ResourceStatistics(); + if (context.IsEmptyResponse) + return null; + context.Read(); + if (context.CurrentTokenType == JsonToken.Null) + return null; + + int targetDepth = context.CurrentDepth; + while (context.ReadAtDepth(targetDepth)) + { + if (context.TestExpression("accountId", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.AccountId = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("lastGeneratedAt", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.LastGeneratedAt = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("resourceId", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ResourceId = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("resourceType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ResourceType = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("totalFindings", targetDepth)) + { + var unmarshaller = IntUnmarshaller.Instance; + unmarshalledObject.TotalFindings = unmarshaller.Unmarshall(context); + continue; + } + } + return unmarshalledObject; + } + + + private static ResourceStatisticsUnmarshaller _instance = new ResourceStatisticsUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static ResourceStatisticsUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/SeverityStatisticsUnmarshaller.cs b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/SeverityStatisticsUnmarshaller.cs new file mode 100644 index 000000000000..a1e01e732467 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/Internal/MarshallTransformations/SeverityStatisticsUnmarshaller.cs @@ -0,0 +1,105 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Text; +using System.Xml.Serialization; + +using Amazon.GuardDuty.Model; +using Amazon.Runtime; +using Amazon.Runtime.Internal; +using Amazon.Runtime.Internal.Transform; +using Amazon.Runtime.Internal.Util; +using ThirdParty.Json.LitJson; + +#pragma warning disable CS0612,CS0618 +namespace Amazon.GuardDuty.Model.Internal.MarshallTransformations +{ + /// + /// Response Unmarshaller for SeverityStatistics Object + /// + public class SeverityStatisticsUnmarshaller : IUnmarshaller, IUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + SeverityStatistics IUnmarshaller.Unmarshall(XmlUnmarshallerContext context) + { + throw new NotImplementedException(); + } + + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// The unmarshalled object + public SeverityStatistics Unmarshall(JsonUnmarshallerContext context) + { + SeverityStatistics unmarshalledObject = new SeverityStatistics(); + if (context.IsEmptyResponse) + return null; + context.Read(); + if (context.CurrentTokenType == JsonToken.Null) + return null; + + int targetDepth = context.CurrentDepth; + while (context.ReadAtDepth(targetDepth)) + { + if (context.TestExpression("lastGeneratedAt", targetDepth)) + { + var unmarshaller = DateTimeUnmarshaller.Instance; + unmarshalledObject.LastGeneratedAt = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("severity", targetDepth)) + { + var unmarshaller = DoubleUnmarshaller.Instance; + unmarshalledObject.Severity = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("totalFindings", targetDepth)) + { + var unmarshaller = IntUnmarshaller.Instance; + unmarshalledObject.TotalFindings = unmarshaller.Unmarshall(context); + continue; + } + } + return unmarshalledObject; + } + + + private static SeverityStatisticsUnmarshaller _instance = new SeverityStatisticsUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static SeverityStatisticsUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/InviteMembersRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/InviteMembersRequest.cs index 31de509903b1..bd8e9a89efcb 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/InviteMembersRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/InviteMembersRequest.cs @@ -104,8 +104,8 @@ internal bool IsSetAccountIds() /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector of the GuardDuty account that you want to invite members - /// with. + /// The unique ID of the detector of the GuardDuty account with which you want to invite + /// members. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListFiltersRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListFiltersRequest.cs index 2cc905f0759a..28cd9f952265 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListFiltersRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListFiltersRequest.cs @@ -42,7 +42,7 @@ public partial class ListFiltersRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the filter is associated with. + /// The unique ID of the detector that is associated with the filter. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListFindingsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListFindingsRequest.cs index 089dff1a3b1d..38277cf3df66 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListFindingsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListFindingsRequest.cs @@ -261,6 +261,10 @@ internal bool IsSetDetectorId() /// ///
  • /// + /// service.ebsVolumeScanDetails.scanId + /// + ///
  • + /// /// service.resourceRole /// ///
  • diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListIPSetsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListIPSetsRequest.cs index 4d96a7297fb9..0ffd9cec0352 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListIPSetsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListIPSetsRequest.cs @@ -44,7 +44,7 @@ public partial class ListIPSetsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the IPSet is associated with. + /// The unique ID of the detector that is associated with IPSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListMembersRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListMembersRequest.cs index 7bb79417ad70..6103e6505964 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListMembersRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListMembersRequest.cs @@ -43,7 +43,7 @@ public partial class ListMembersRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector the member is associated with. + /// The unique ID of the detector that is associated with the member. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListPublishingDestinationsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListPublishingDestinationsRequest.cs index fc49894f1258..d9cec038f321 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListPublishingDestinationsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListPublishingDestinationsRequest.cs @@ -42,7 +42,7 @@ public partial class ListPublishingDestinationsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector to retrieve publishing destinations for. + /// The detector ID for which you want to retrieve the publishing destination. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ListThreatIntelSetsRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/ListThreatIntelSetsRequest.cs index 790a3e521461..164fbfb63b36 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/ListThreatIntelSetsRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/ListThreatIntelSetsRequest.cs @@ -44,7 +44,7 @@ public partial class ListThreatIntelSetsRequest : AmazonGuardDutyRequest /// /// Gets and sets the property DetectorId. /// - /// The unique ID of the detector that the threatIntelSet is associated with. + /// The unique ID of the detector that is associated with the threatIntelSet. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/ResourceStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/ResourceStatistics.cs new file mode 100644 index 000000000000..d0a5611d7988 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/ResourceStatistics.cs @@ -0,0 +1,182 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Xml.Serialization; +using System.Text; +using System.IO; +using System.Net; + +using Amazon.Runtime; +using Amazon.Runtime.Internal; + +#pragma warning disable CS0612,CS0618,CS1570 +namespace Amazon.GuardDuty.Model +{ + /// + /// Information about each resource type associated with the groupedByResource + /// statistics. + /// + public partial class ResourceStatistics + { + private string _accountId; + private DateTime? _lastGeneratedAt; + private string _resourceId; + private string _resourceType; + private int? _totalFindings; + + /// + /// Gets and sets the property AccountId. + /// + /// The ID of the Amazon Web Services account. + /// + /// + public string AccountId + { + get { return this._accountId; } + set { this._accountId = value; } + } + + // Check to see if AccountId property is set + internal bool IsSetAccountId() + { + return this._accountId != null; + } + + /// + /// Gets and sets the property LastGeneratedAt. + /// + /// The timestamp at which the statistics for this resource was last generated. + /// + /// + public DateTime LastGeneratedAt + { + get { return this._lastGeneratedAt.GetValueOrDefault(); } + set { this._lastGeneratedAt = value; } + } + + // Check to see if LastGeneratedAt property is set + internal bool IsSetLastGeneratedAt() + { + return this._lastGeneratedAt.HasValue; + } + + /// + /// Gets and sets the property ResourceId. + /// + /// ID associated with each resource. The following list provides the mapping of the resource + /// type and resource ID. + /// + /// + /// + /// Mapping of resource and resource ID + /// + ///
    • + /// + /// AccessKey - resource.accessKeyDetails.accessKeyId + /// + ///
    • + /// + /// Container - resource.containerDetails.id + /// + ///
    • + /// + /// ECSCluster - resource.ecsClusterDetails.name + /// + ///
    • + /// + /// EKSCluster - resource.eksClusterDetails.name + /// + ///
    • + /// + /// Instance - resource.instanceDetails.instanceId + /// + ///
    • + /// + /// KubernetesCluster - resource.kubernetesDetails.kubernetesWorkloadDetails.name + /// + /// + ///
    • + /// + /// Lambda - resource.lambdaDetails.functionName + /// + ///
    • + /// + /// RDSDBInstance - resource.rdsDbInstanceDetails.dbInstanceIdentifier + /// + ///
    • + /// + /// S3Bucket - resource.s3BucketDetails.name + /// + ///
    • + /// + /// S3Object - resource.s3BucketDetails.name + /// + ///
    + ///
    + public string ResourceId + { + get { return this._resourceId; } + set { this._resourceId = value; } + } + + // Check to see if ResourceId property is set + internal bool IsSetResourceId() + { + return this._resourceId != null; + } + + /// + /// Gets and sets the property ResourceType. + /// + /// The type of resource. + /// + /// + public string ResourceType + { + get { return this._resourceType; } + set { this._resourceType = value; } + } + + // Check to see if ResourceType property is set + internal bool IsSetResourceType() + { + return this._resourceType != null; + } + + /// + /// Gets and sets the property TotalFindings. + /// + /// The total number of findings associated with this resource. + /// + /// + public int TotalFindings + { + get { return this._totalFindings.GetValueOrDefault(); } + set { this._totalFindings = value; } + } + + // Check to see if TotalFindings property is set + internal bool IsSetTotalFindings() + { + return this._totalFindings.HasValue; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/Scan.cs b/sdk/src/Services/GuardDuty/Generated/Model/Scan.cs index 9ed5727fd4de..dfc36732b06e 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/Scan.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/Scan.cs @@ -73,8 +73,8 @@ internal bool IsSetAccountId() /// Gets and sets the property AdminDetectorId. /// /// The unique detector ID of the administrator account that the request is associated - /// with. Note that this value will be the same as the one used for DetectorId - /// if the account is an administrator. + /// with. If the account is an administrator, the AdminDetectorId will be the same + /// as the one used for DetectorId. /// ///
  • [AWSProperty(Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/SeverityStatistics.cs b/sdk/src/Services/GuardDuty/Generated/Model/SeverityStatistics.cs new file mode 100644 index 000000000000..938b722440e5 --- /dev/null +++ b/sdk/src/Services/GuardDuty/Generated/Model/SeverityStatistics.cs @@ -0,0 +1,96 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +/* + * Do not modify this file. This file is generated from the guardduty-2017-11-28.normal.json service model. + */ +using System; +using System.Collections.Generic; +using System.Xml.Serialization; +using System.Text; +using System.IO; +using System.Net; + +using Amazon.Runtime; +using Amazon.Runtime.Internal; + +#pragma warning disable CS0612,CS0618,CS1570 +namespace Amazon.GuardDuty.Model +{ + /// + /// Information about severity level for each finding type. + /// + public partial class SeverityStatistics + { + private DateTime? _lastGeneratedAt; + private double? _severity; + private int? _totalFindings; + + /// + /// Gets and sets the property LastGeneratedAt. + /// + /// The timestamp at which a finding type for a specific severity was last generated. + /// + /// + public DateTime LastGeneratedAt + { + get { return this._lastGeneratedAt.GetValueOrDefault(); } + set { this._lastGeneratedAt = value; } + } + + // Check to see if LastGeneratedAt property is set + internal bool IsSetLastGeneratedAt() + { + return this._lastGeneratedAt.HasValue; + } + + /// + /// Gets and sets the property Severity. + /// + /// The severity level associated with each finding type. + /// + /// + public double Severity + { + get { return this._severity.GetValueOrDefault(); } + set { this._severity = value; } + } + + // Check to see if Severity property is set + internal bool IsSetSeverity() + { + return this._severity.HasValue; + } + + /// + /// Gets and sets the property TotalFindings. + /// + /// The total number of findings associated with this severity. + /// + /// + public int TotalFindings + { + get { return this._totalFindings.GetValueOrDefault(); } + set { this._totalFindings = value; } + } + + // Check to see if TotalFindings property is set + internal bool IsSetTotalFindings() + { + return this._totalFindings.HasValue; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/GuardDuty/Generated/Model/UpdateFindingsFeedbackRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/UpdateFindingsFeedbackRequest.cs index 3e38f6ab8022..5086c8143a30 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/UpdateFindingsFeedbackRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/UpdateFindingsFeedbackRequest.cs @@ -61,7 +61,8 @@ internal bool IsSetComments() /// /// Gets and sets the property DetectorId. /// - /// The ID of the detector associated with the findings to update feedback for. + /// The ID of the detector that is associated with the findings for which you want to + /// update the feedback. /// /// [AWSProperty(Required=true, Min=1, Max=300)] diff --git a/sdk/src/Services/GuardDuty/Generated/Model/UpdateMalwareProtectionPlanRequest.cs b/sdk/src/Services/GuardDuty/Generated/Model/UpdateMalwareProtectionPlanRequest.cs index 49efc4e4c108..7e85dd6caeff 100644 --- a/sdk/src/Services/GuardDuty/Generated/Model/UpdateMalwareProtectionPlanRequest.cs +++ b/sdk/src/Services/GuardDuty/Generated/Model/UpdateMalwareProtectionPlanRequest.cs @@ -99,8 +99,8 @@ internal bool IsSetProtectedResource() /// /// Gets and sets the property Role. /// - /// IAM role with permissions required to scan and add tags to the associated protected - /// resource. + /// Amazon Resource Name (ARN) of the IAM role with permissions to scan and add tags to + /// the associated protected resource. /// /// public string Role diff --git a/sdk/src/Services/GuardDuty/Generated/ServiceEnumerations.cs b/sdk/src/Services/GuardDuty/Generated/ServiceEnumerations.cs index 898fa192131f..1e6eea6798da 100644 --- a/sdk/src/Services/GuardDuty/Generated/ServiceEnumerations.cs +++ b/sdk/src/Services/GuardDuty/Generated/ServiceEnumerations.cs @@ -1266,6 +1266,68 @@ public static implicit operator FreeTrialFeatureResult(string value) } + /// + /// Constants used for properties of type GroupByType. + /// + public class GroupByType : ConstantClass + { + + /// + /// Constant ACCOUNT for GroupByType + /// + public static readonly GroupByType ACCOUNT = new GroupByType("ACCOUNT"); + /// + /// Constant DATE for GroupByType + /// + public static readonly GroupByType DATE = new GroupByType("DATE"); + /// + /// Constant FINDING_TYPE for GroupByType + /// + public static readonly GroupByType FINDING_TYPE = new GroupByType("FINDING_TYPE"); + /// + /// Constant RESOURCE for GroupByType + /// + public static readonly GroupByType RESOURCE = new GroupByType("RESOURCE"); + /// + /// Constant SEVERITY for GroupByType + /// + public static readonly GroupByType SEVERITY = new GroupByType("SEVERITY"); + + /// + /// This constant constructor does not need to be called if the constant + /// you are attempting to use is already defined as a static instance of + /// this class. + /// This constructor should be used to construct constants that are not + /// defined as statics, for instance if attempting to use a feature that is + /// newer than the current version of the SDK. + /// + public GroupByType(string value) + : base(value) + { + } + + /// + /// Finds the constant for the unique value. + /// + /// The unique value for the constant + /// The constant for the unique value + public static GroupByType FindValue(string value) + { + return FindValue(value); + } + + /// + /// Utility method to convert strings to the constant class. + /// + /// The string value to convert to the constant class. + /// + public static implicit operator GroupByType(string value) + { + return FindValue(value); + } + } + + /// /// Constants used for properties of type IpSetFormat. /// diff --git a/sdk/src/Services/GuardDuty/Generated/_bcl35/AmazonGuardDutyClient.cs b/sdk/src/Services/GuardDuty/Generated/_bcl35/AmazonGuardDutyClient.cs index 34c6965ae30f..fd3bb420ce31 100644 --- a/sdk/src/Services/GuardDuty/Generated/_bcl35/AmazonGuardDutyClient.cs +++ b/sdk/src/Services/GuardDuty/Generated/_bcl35/AmazonGuardDutyClient.cs @@ -867,8 +867,8 @@ public virtual CreateMembersResponse EndCreateMembers(IAsyncResult asyncResult) #region CreatePublishingDestination /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -2309,7 +2309,7 @@ public virtual GetCoverageStatisticsResponse EndGetCoverageStatistics(IAsyncResu #region GetDetector /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -2497,10 +2497,16 @@ public virtual GetFindingsResponse EndGetFindings(IAsyncResult asyncResult) #region GetFindingsStatistics /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. diff --git a/sdk/src/Services/GuardDuty/Generated/_bcl35/IAmazonGuardDuty.cs b/sdk/src/Services/GuardDuty/Generated/_bcl35/IAmazonGuardDuty.cs index 6424d69e3be8..34a56cacc512 100644 --- a/sdk/src/Services/GuardDuty/Generated/_bcl35/IAmazonGuardDuty.cs +++ b/sdk/src/Services/GuardDuty/Generated/_bcl35/IAmazonGuardDuty.cs @@ -537,8 +537,8 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -1671,7 +1671,7 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -1817,10 +1817,16 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. diff --git a/sdk/src/Services/GuardDuty/Generated/_bcl45/AmazonGuardDutyClient.cs b/sdk/src/Services/GuardDuty/Generated/_bcl45/AmazonGuardDutyClient.cs index 532b4b14a7e2..86e5bfbe4bf8 100644 --- a/sdk/src/Services/GuardDuty/Generated/_bcl45/AmazonGuardDutyClient.cs +++ b/sdk/src/Services/GuardDuty/Generated/_bcl45/AmazonGuardDutyClient.cs @@ -902,8 +902,8 @@ public virtual CreateMembersResponse CreateMembers(CreateMembersRequest request) /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -926,8 +926,8 @@ public virtual CreatePublishingDestinationResponse CreatePublishingDestination(C /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -2308,7 +2308,7 @@ public virtual GetCoverageStatisticsResponse GetCoverageStatistics(GetCoverageSt /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -2339,7 +2339,7 @@ public virtual GetDetectorResponse GetDetector(GetDetectorRequest request) /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -2483,10 +2483,16 @@ public virtual GetFindingsResponse GetFindings(GetFindingsRequest request) /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. @@ -2513,10 +2519,16 @@ public virtual GetFindingsStatisticsResponse GetFindingsStatistics(GetFindingsSt /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. diff --git a/sdk/src/Services/GuardDuty/Generated/_bcl45/IAmazonGuardDuty.cs b/sdk/src/Services/GuardDuty/Generated/_bcl45/IAmazonGuardDuty.cs index efe074811d13..6f33e24c6843 100644 --- a/sdk/src/Services/GuardDuty/Generated/_bcl45/IAmazonGuardDuty.cs +++ b/sdk/src/Services/GuardDuty/Generated/_bcl45/IAmazonGuardDuty.cs @@ -577,8 +577,8 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -595,8 +595,8 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -1697,7 +1697,7 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -1722,7 +1722,7 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -1833,10 +1833,16 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. @@ -1857,10 +1863,16 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. diff --git a/sdk/src/Services/GuardDuty/Generated/_netstandard/AmazonGuardDutyClient.cs b/sdk/src/Services/GuardDuty/Generated/_netstandard/AmazonGuardDutyClient.cs index f0abac1da933..f711f645d39e 100644 --- a/sdk/src/Services/GuardDuty/Generated/_netstandard/AmazonGuardDutyClient.cs +++ b/sdk/src/Services/GuardDuty/Generated/_netstandard/AmazonGuardDutyClient.cs @@ -721,8 +721,8 @@ internal virtual CreatePublishingDestinationResponse CreatePublishingDestination /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -1722,7 +1722,7 @@ internal virtual GetDetectorResponse GetDetector(GetDetectorRequest request) /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -1850,10 +1850,16 @@ internal virtual GetFindingsStatisticsResponse GetFindingsStatistics(GetFindings /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints. diff --git a/sdk/src/Services/GuardDuty/Generated/_netstandard/IAmazonGuardDuty.cs b/sdk/src/Services/GuardDuty/Generated/_netstandard/IAmazonGuardDuty.cs index d1794710f214..c5cdc9378324 100644 --- a/sdk/src/Services/GuardDuty/Generated/_netstandard/IAmazonGuardDuty.cs +++ b/sdk/src/Services/GuardDuty/Generated/_netstandard/IAmazonGuardDuty.cs @@ -358,8 +358,8 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Creates a publishing destination to export findings to. The resource to export findings - /// to must exist before you use this operation. + /// Creates a publishing destination where you can export your GuardDuty findings. Before + /// you start exporting the findings, the destination resource must exist. /// /// Container for the necessary parameters to execute the CreatePublishingDestination service method. /// @@ -1006,7 +1006,7 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Retrieves an Amazon GuardDuty detector specified by the detectorId. + /// Retrieves a GuardDuty detector specified by the detectorId. /// /// /// @@ -1086,10 +1086,16 @@ public partial interface IAmazonGuardDuty : IAmazonService, IDisposable /// - /// Lists Amazon GuardDuty findings statistics for the specified detector ID. + /// Lists GuardDuty findings statistics for the specified detector ID. /// /// /// + /// You must provide either findingStatisticTypes or groupBy parameter, + /// and not both. You can use the maxResults and orderBy parameters only + /// when using groupBy. + /// + /// + /// /// There might be regional differences because some flags might not be available in all /// the Regions where GuardDuty is currently supported. For more information, see Regions /// and endpoints.