This product is not supported for your selected Datadog site. ().

Update experiment metric group

PATCH https://api.ap1.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.ap2.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.datadoghq.eu/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.ddog-gov.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.us2.ddog-gov.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.uk1.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.us3.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}https://api.us5.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groups/{metric_group_id}

Overview

Update a non-decision metric group. Omitted attributes are unchanged; a supplied metrics array is the complete ordered replacement. Decision groups remain managed through the experiment resource. This operation does not synchronously recompute results. This endpoint requires the product_analytics_experiments_write permission.

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

Arguments

Path Parameters

Name

Type

Description

experiment_id [required]

string

The UUID of the experiment.

metric_group_id [required]

string

The UUID of the metric group.

Request

Body Data (required)

Expand All

Field

Type

Description

data [required]

object

JSON:API resource containing the experiment metric group identity and fields.

attributes

object

Fields supplied to update the experiment metric group.

metrics

[object]

Metrics included in this group.

metric_id [required]

uuid

Identifier of the metric to include in the group.

migration_metadata

Metadata retained for resources imported from another system.

name

string

Display name of the experiment metric group.

id

uuid

ID of the experiment metric group.

type [required]

enum

Experiment metric groups resource type. Allowed enum values: experiment-metric-groups

default: experiment-metric-groups

{
  "data": {
    "type": "experiment-metric-groups",
    "id": "550e8400-e29b-41d4-a716-446655440022",
    "attributes": {
      "name": "ex-14bb9543f523edde updated"
    }
  }
}

Response

OK

Response containing the saved experiment metric group and result refresh information.

Expand All

Field

Type

Description

data [required]

object

Experiment metric group resource with its identifier and metric selection.

attributes

object

Name, purpose, and selected metrics of an experiment metric group.

is_decision

boolean

Whether this group contains the experiment decision metrics.

metrics

[object]

Metrics selected for this experiment metric group.

is_primary [required]

boolean

Whether this is the experiment primary metric.

metric_id [required]

string

Identifier of the metric in the group.

metric_name [required]

string

Display name of the metric in the group.

migration_metadata

Metadata associated with migration of this resource.

name

string

Display name of the experiment metric group.

id [required]

uuid

Identifier of the experiment metric group.

type [required]

enum

Experiment metric groups resource type. Allowed enum values: experiment-metric-groups

default: experiment-metric-groups

meta

object

Refresh requirements and warnings returned by an experiment update.

needs_pipeline_refresh [required]

boolean

Whether this edit needs a full or non-full pipeline run. This operation does not start the run. A later false value does not clear a refresh required by an earlier edit.

refresh_endpoint

string

POST to this endpoint after finishing your edits. The full_refresh query parameter selects the required run type. Across multiple edits any full_refresh=true requirement takes priority.

warnings

[object]

Warnings returned after the experiment update.

code [required]

string

Code that identifies the warning.

detail [required]

string

Explanation of the warning and its effect on the update.

{
  "data": {
    "attributes": {
      "is_decision": false,
      "metrics": [
        {
          "is_primary": false,
          "metric_id": "550e8400-e29b-41d4-a716-446655440000",
          "metric_name": "metric name"
        }
      ],
      "migration_metadata": "undefined",
      "name": "string"
    },
    "id": "550e8400-e29b-41d4-a716-446655440022",
    "type": "experiment-metric-groups"
  },
  "meta": {
    "needs_pipeline_refresh": false,
    "refresh_endpoint": "string",
    "warnings": [
      {
        "code": "code",
        "detail": "detail"
      }
    ]
  }
}

Bad Request

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Unauthorized

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Forbidden

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Not Found

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Conflict

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Request body sent with a media type other than application/json or application/vnd.api+json.

API error response.

Expand All

Field

Type

Description

errors [required]

[object]

A list of errors.

detail

string

A human-readable explanation specific to this occurrence of the error.

meta

object

Non-standard meta-information about the error

source

object

References to the source of the error.

header

string

A string indicating the name of a single request header which caused the error.

parameter

string

A string indicating which URI query parameter caused the error.

pointer

string

A JSON pointer to the value in the request document that caused the error.

status

string

Status code of the response.

title

string

Short human-readable summary of the error.

{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}

Too many requests

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Code Example

                          ## default
# 

# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
export metric_group_id="550e8400-e29b-41d4-a716-446655440000"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

# Curl command
curl -X PATCH "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.uk1.datadoghq.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/experiments/${experiment_id}/metric-groups/${metric_group_id}" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${DD_BEARER_TOKEN}" \ -d @- << EOF { "data": { "attributes": { "metrics": [ { "metric_id": "550e8400-e29b-41d4-a716-446655440021" } ], "name": "Reliability" }, "id": "550e8400-e29b-41d4-a716-446655440022", "type": "experiment-metric-groups" } } EOF