For AI agents: A markdown version of this page is available at https://dnd37xeb23o8n.cloudfront.net/jen.gilbert/astro-base/api/latest/synthetics/create-a-private-location.md. A documentation index is available at /llms.txt.
Language
Datadog site

Create a private location

POSThttps://api.datadoghq.com/api/v1/synthetics/private-locationshttps://api.us3.datadoghq.com/api/v1/synthetics/private-locationshttps://api.us5.datadoghq.com/api/v1/synthetics/private-locationshttps://api.datadoghq.eu/api/v1/synthetics/private-locationshttps://api.ap1.datadoghq.com/api/v1/synthetics/private-locationshttps://api.ap2.datadoghq.com/api/v1/synthetics/private-locationshttps://api.uk1.datadoghq.com/api/v1/synthetics/private-locationshttps://api.ddog-gov.com/api/v1/synthetics/private-locationshttps://api.us2.ddog-gov.com/api/v1/synthetics/private-locations

Overview

Create a new Synthetic private location.

This endpoint requires the synthetics_private_location_write permission.

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

Request

Body Data (required)

Details of the private location to create.

Field
Type
Description
description [required]
string

Description of the private location.

metadata
object

Object containing metadata about the private location.

name [required]
string

Name of the private location.

tags [required]
[string]

Array of tags attached to the private location.

Response

OK

Object that contains the new private location, the public key for result encryption, and the configuration skeleton.

Field
Type
Description
config
object

Configuration skeleton for the private location. See installation instructions of the private location on how to use this configuration.

private_location
object

Object containing information about the private location to create.

result_encryption
object

Public key for the result encryption.

Code Example

Create a private location returns "OK" 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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
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/v1/synthetics/private-locations" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "description": "Test Example-Synthetic description",
  "metadata": {
    "restricted_roles": [
      "string"
    ]
  },
  "name": "Example-Synthetic",
  "tags": [
    "test:examplesynthetic"
  ]
}
EOF