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/create-a-batch-migration.md. A documentation index is available at /llms.txt.
Language
Datadog site

Create a batch migration

WARNINGNote: This endpoint is in Preview and is subject to change. To request access, contact Datadog support or your Customer Success Manager.
POSThttps://api.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.us3.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.us5.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.datadoghq.eu/api/v2/security_monitoring/batch-migrationshttps://api.ap1.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.ap2.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.uk1.datadoghq.com/api/v2/security_monitoring/batch-migrationshttps://api.ddog-gov.com/api/v2/security_monitoring/batch-migrationshttps://api.us2.ddog-gov.com/api/v2/security_monitoring/batch-migrations

Overview

Create a batch migration in the draft status, together with 1 to 100 initial resources. Each resource holds one source rule to translate into a Cloud SIEM detection rule. To load more rules, add them with the add resources endpoint before starting the batch migration. A batch migration can hold up to 1000 resources. The response does not include the created resources: list the resources of the batch migration to retrieve them.

This endpoint requires the security_monitoring_rules_write permission.

OAuth apps require the security_monitoring_rules_write authorization scope to access this endpoint.

Request

Body Data (required)

Field
Type
Description
data [required]
object

Data of the batch migration to create.

Response

Created

Response containing a batch migration.

Field
Type
Description
data [required]
object

A batch migration.

Code Example

Create a batch migration returns "Created" response
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF
# 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/batch-migrations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "batchMigration",
    "attributes": {
      "name": "Example-Security-Monitoring",
      "description": "Rules imported from Splunk",
      "tags": [
        "source:splunk"
      ],
      "resources": [
        {
          "name": "Repeated Windows login failures",
          "description": "Detects repeated failed Windows authentication attempts.",
          "inputType": "spl",
          "input": "index=wineventlog EventCode=4625"
        }
      ]
    }
  }
}
EOF