[ aws . guardduty ]



Creates a single Amazon GuardDuty detector. A detector is a resource that represents the GuardDuty service. To start using GuardDuty, you must create a detector in each Region where you enable the service. You can have only one detector per account per Region. All data sources are enabled in a new detector by default.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--enable | --no-enable
[--client-token <value>]
[--finding-publishing-frequency <value>]
[--data-sources <value>]
[--tags <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]


--enable | --no-enable (boolean)

A Boolean value that specifies whether the detector is to be enabled.

--client-token (string)

The idempotency token for the create request.

--finding-publishing-frequency (string)

A value that specifies how frequently updated findings are exported.

Possible values:




--data-sources (structure)

Describes which data sources will be enabled for the detector.

S3Logs -> (structure)

Describes whether S3 data event logs are enabled as a data source.

Enable -> (boolean)

The status of S3 data event logs as a data source.

Kubernetes -> (structure)

Describes whether any Kubernetes logs are enabled as data sources.

AuditLogs -> (structure)

The status of Kubernetes audit logs as a data source.

Enable -> (boolean)

The status of Kubernetes audit logs as a data source.

Shorthand Syntax:


JSON Syntax:

  "S3Logs": {
    "Enable": true|false
  "Kubernetes": {
    "AuditLogs": {
      "Enable": true|false

--tags (map)

The tags to be added to a new detector resource.

key -> (string)

value -> (string)

Shorthand Syntax:


JSON Syntax:

{"string": "string"

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.


To enable GuardDuty in the current region

This example shows how to create a new detector, which enables GuardDuty, in the current region.:

aws guardduty create-detector \


    "DetectorId": "b6b992d6d2f48e64bc59180bfexample"

For more information, see Enable Amazon GuardDuty in the GuardDuty User Guide.


DetectorId -> (string)

The unique ID of the created detector.