---
title: "Convert an existing rule from JSON to Terraform"
method: GET
path: "/api/v2/security_monitoring/rules/{rule_id}/convert"
tags: ["Security Monitoring"]
---

# Convert an existing rule from JSON to Terraform

`GET /api/v2/security_monitoring/rules/{rule_id}/convert`

## Request

- Base URL: `https://api.datadoghq.com`
- URL: `https://api.datadoghq.com/api/v2/security_monitoring/rules/{rule_id}/convert`
- Auth: one of:
  - API key in header `DD-API-KEY` and API key in header `DD-APPLICATION-KEY`
  - OAuth 2
    - Authorization code: `/oauth2/v1/authorize`
    - Token URL: `/oauth2/v1/token` scopes: `security_monitoring_rules_read`

Convert an existing rule from JSON to Terraform for Datadog provider
resource `datadog_security_monitoring_rule`. You can do so for the following rule types:
- App and API Protection
- Cloud SIEM (log detection and signal correlation)
- Workload Protection

You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule).

## Path parameters

- `rule_id` string, required

## Response `200`

OK

- SecurityMonitoringRuleConvertResponse: Result of the convert rule request containing Terraform content.
  - `ruleId` string: the ID of the rule.
  - `terraformContent` string: Terraform string as a result of converting the rule from JSON.

## Other responses

- `400`: Bad Request
- `403`: Not Authorized
- `404`: Not Found
- `429`: Too many requests

---

[API](https://skmtc.dev/datadog/apis/datadog-api-v2-collection.md) - [All operations](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/llms.txt) - [OpenAPI document](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/revisions/da68bf029e4c?raw)
