

# DescribeMalwareScans
<a name="API_DescribeMalwareScans"></a>

Returns a list of malware scans. Each member account can view the malware scans for their own accounts. An administrator can view the malware scans for all the member accounts.

There might be regional differences because some data sources might not be available in all the AWS Regions where GuardDuty is presently supported. For more information, see [Regions and endpoints](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_regions.html).

## Request Syntax
<a name="API_DescribeMalwareScans_RequestSyntax"></a>

```
POST /detector/detectorId/malware-scans HTTP/1.1
Content-type: application/json

{
   "filterCriteria": { 
      "filterCriterion": [ 
         { 
            "criterionKey": "string",
            "filterCondition": { 
               "equalsValue": "string",
               "greaterThan": number,
               "lessThan": number
            }
         }
      ]
   },
   "maxResults": number,
   "nextToken": "string",
   "sortCriteria": { 
      "attributeName": "string",
      "orderBy": "string"
   }
}
```

## URI Request Parameters
<a name="API_DescribeMalwareScans_RequestParameters"></a>

The request uses the following URI parameters.

 ** [detectorId](#API_DescribeMalwareScans_RequestSyntax) **   <a name="guardduty-DescribeMalwareScans-request-uri-DetectorId"></a>
The unique ID of the detector that the request is associated with.  
To find the `detectorId` in the current Region, see the Settings page in the GuardDuty console, or run the [ListDetectors](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html) API.  
Length Constraints: Minimum length of 1. Maximum length of 300.  
Required: Yes

## Request Body
<a name="API_DescribeMalwareScans_RequestBody"></a>

The request accepts the following data in JSON format.

 ** [filterCriteria](#API_DescribeMalwareScans_RequestSyntax) **   <a name="guardduty-DescribeMalwareScans-request-filterCriteria"></a>
Represents the criteria to be used in the filter for describing scan entries.  
Type: [FilterCriteria](API_FilterCriteria.md) object  
Required: No

 ** [maxResults](#API_DescribeMalwareScans_RequestSyntax) **   <a name="guardduty-DescribeMalwareScans-request-maxResults"></a>
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.  
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 50.  
Required: No

 ** [nextToken](#API_DescribeMalwareScans_RequestSyntax) **   <a name="guardduty-DescribeMalwareScans-request-nextToken"></a>
You can use this parameter when paginating results. Set the value of this parameter to null on your first call to the list action. For subsequent calls to the action, fill nextToken in the request with the value of NextToken from the previous response to continue listing data.  
Type: String  
Required: No

 ** [sortCriteria](#API_DescribeMalwareScans_RequestSyntax) **   <a name="guardduty-DescribeMalwareScans-request-sortCriteria"></a>
Represents the criteria used for sorting scan entries. The [https://docs.aws.amazon.com/guardduty/latest/APIReference/API_SortCriteria.html#guardduty-Type-SortCriteria-attributeName](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_SortCriteria.html#guardduty-Type-SortCriteria-attributeName) is required and it must be `scanStartTime`.  
Type: [SortCriteria](API_SortCriteria.md) object  
Required: No

## Response Syntax
<a name="API_DescribeMalwareScans_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "nextToken": "string",
   "scans": [ 
      { 
         "accountId": "string",
         "adminDetectorId": "string",
         "attachedVolumes": [ 
            { 
               "deviceName": "string",
               "encryptionType": "string",
               "kmsKeyArn": "string",
               "snapshotArn": "string",
               "volumeArn": "string",
               "volumeSizeInGB": number,
               "volumeType": "string"
            }
         ],
         "detectorId": "string",
         "failureReason": "string",
         "fileCount": number,
         "resourceDetails": { 
            "instanceArn": "string"
         },
         "scanEndTime": number,
         "scanId": "string",
         "scanResultDetails": { 
            "scanResult": "string"
         },
         "scanStartTime": number,
         "scanStatus": "string",
         "scanType": "string",
         "totalBytes": number,
         "triggerDetails": { 
            "description": "string",
            "guardDutyFindingId": "string",
            "triggerType": "string"
         }
      }
   ]
}
```

## Response Elements
<a name="API_DescribeMalwareScans_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [nextToken](#API_DescribeMalwareScans_ResponseSyntax) **   <a name="guardduty-DescribeMalwareScans-response-nextToken"></a>
The pagination parameter to be used on the next list operation to retrieve more items.  
Type: String

 ** [scans](#API_DescribeMalwareScans_ResponseSyntax) **   <a name="guardduty-DescribeMalwareScans-response-scans"></a>
Contains information about malware scans associated with GuardDuty Malware Protection for EC2.  
Type: Array of [Scan](API_Scan.md) objects

## Errors
<a name="API_DescribeMalwareScans_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** BadRequestException **   
A bad request exception object.    
 ** Message **   
The error message.  
 ** Type **   
The error type.
HTTP Status Code: 400

 ** InternalServerErrorException **   
An internal server error exception object.    
 ** Message **   
The error message.  
 ** Type **   
The error type.
HTTP Status Code: 500

## See Also
<a name="API_DescribeMalwareScans_SeeAlso"></a>

For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS Command Line Interface V2](https://docs.aws.amazon.com/goto/cli2/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/guardduty-2017-11-28/DescribeMalwareScans) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/guardduty-2017-11-28/DescribeMalwareScans) 