For AI agents: A markdown version of this page is available at https://dnd37xeb23o8n.cloudfront.net/stefon.simmons/docs-astro-web-10435/api/latest/security-monitoring/convert-security-monitoring-resource-to-terraform.md. A documentation index is available at /llms.txt.
Language
Datadog site

Convert security monitoring resource to Terraform

WARNINGNote: This endpoint is in Preview. If you have any feedback, contact Datadog support.
POSThttps://api.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.us3.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.us5.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.datadoghq.eu/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.ap1.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.ap2.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.uk1.datadoghq.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.ddog-gov.com/api/v2/security_monitoring/terraform/{resource_type}/converthttps://api.us2.ddog-gov.com/api/v2/security_monitoring/terraform/{resource_type}/convert

Overview

Convert a security monitoring resource that doesn't (yet) exist from JSON to Terraform. The resource_type path parameter specifies the type of resource to convert and must be one of suppressions, critical_assets, security_filters, or rules.

This endpoint requires any of the following permissions:

  • security_monitoring_suppressions_read
  • security_monitoring_rules_read
  • security_monitoring_filters_read

OAuth apps require one of the following authorization scopes to access this endpoint: security_monitoring_suppressions_read, security_monitoring_rules_read, security_monitoring_filters_read.

Arguments

Path Parameters

Name
Type
Description
resource_type [required]
enum

The type of security monitoring resource to export.

Allowed enum values: suppressions, critical_assets, security_filters, rules

Request

Body Data (required)

The resource JSON to convert.

Field
Type
Description
data [required]
object

The convert request data object.

Response

OK

Response containing the Terraform configuration for a security monitoring resource.

Field
Type
Description
data
object

The Terraform export data object.

Code Example

Convert security monitoring resource to Terraform returns "OK" response
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF
# Path parameters
export resource_type="CHANGE_ME"

# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v2/security_monitoring/terraform/${resource_type}/convert" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "convert_resource",
    "id": "abc-123",
    "attributes": {
      "resource_json": {
        "enabled": true,
        "name": "Example-Security-Monitoring",
        "rule_query": "source:cloudtrail",
        "suppression_query": "env:test"
      }
    }
  }
}
EOF