For AI agents: A markdown version of this page is available at https://dnd37xeb23o8n.cloudfront.net/stefon.simmons/docs-astro-web-10435/api/latest/execution-policy/create-an-execution-policy.md. A documentation index is available at /llms.txt.
Language
Datadog site

Create an execution policy

WARNINGNote: This endpoint is in preview and is subject to change. If you have any feedback, contact Datadog support.
POSThttps://api.datadoghq.com/api/v2/actions/execution-policieshttps://api.us3.datadoghq.com/api/v2/actions/execution-policieshttps://api.us5.datadoghq.com/api/v2/actions/execution-policieshttps://api.datadoghq.eu/api/v2/actions/execution-policieshttps://api.ap1.datadoghq.com/api/v2/actions/execution-policieshttps://api.ap2.datadoghq.com/api/v2/actions/execution-policieshttps://api.uk1.datadoghq.com/api/v2/actions/execution-policieshttps://api.ddog-gov.com/api/v2/actions/execution-policieshttps://api.us2.ddog-gov.com/api/v2/actions/execution-policies

Overview

Create a new execution policy.

This endpoint requires the execution_groups_write permission.

Request

Body Data (required)

The execution policy to create.

Field
Type
Description
data [required]
object

Object for a single execution policy.

Response

Created

Response object that includes a single execution policy.

Field
Type
Description
data [required]
object

Object for a single execution policy.

Code Example

Create an execution policy 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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      }
    }
  }
}
EOF
Create an execution policy with scope and targets 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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
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/actions/execution-policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "data": {
    "type": "execution_policy",
    "attributes": {
      "name": "Cassette Execution Policy exampleexecutionpolicy",
      "effect": "allow",
      "action_pattern": {
        "integration": "INTEGRATION_SCRIPT",
        "action_fqns": [
          "com.datadoghq.script.*"
        ]
      },
      "scope": {
        "scripts": {
          "rules": [
            {
              "target_script_names": [
                "restart_service.sh"
              ]
            }
          ]
        }
      },
      "targets": [
        {
          "name": "Production hosts",
          "agent_tags": [
            "env:prod"
          ]
        }
      ]
    }
  }
}
EOF