Create a non-decision metric group. The optional metrics array is ordered. Decision groups remain managed through decision_metrics on 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.
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.
## default
#
# Path parameters exportexperiment_id="550e8400-e29b-41d4-a716-446655440000" # Use a Personal Access Token or Service Access Token exportDD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
// Create experiment metric group returns "Created" responsepackagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2""github.com/google/uuid")funcmain(){// there is a valid "experiment" in the systemExperimentDataID:=uuid.MustParse(os.Getenv("EXPERIMENT_DATA_ID"))// there is a valid "experiment_metric" in the systemExperimentMetricDataID:=uuid.MustParse(os.Getenv("EXPERIMENT_METRIC_DATA_ID"))body:=datadogV2.ExperimentsCreateExperimentMetricGroupV2Request{Data:datadogV2.ExperimentsCreateExperimentMetricGroupV2RequestData{Type:datadogV2.EXPERIMENTSPATCHEXPERIMENTMETRICGROUPV2REQUESTDATATYPE_EXPERIMENT_METRIC_GROUPS,Attributes:datadogV2.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes{Name:"ex-14bb9543f523edde",Metrics:[]datadogV2.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems{{MetricId:ExperimentMetricDataID,},},},},}ctx:=datadog.NewDefaultContext(context.Background())ctx=context.WithValue(ctx,datadog.ContextAccessToken,os.Getenv("DD_BEARER_TOKEN"))configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewExperimentsApi(apiClient)resp,r,err:=api.CreateExperimentMetricGroup(ctx,ExperimentDataID,body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `ExperimentsApi.CreateExperimentMetricGroup`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `ExperimentsApi.CreateExperimentMetricGroup`:\n%s\n",responseContent)}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"go run"main.go"
// Create experiment metric group returns "Created" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.ExperimentsApi;importcom.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2Request;importcom.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestData;importcom.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes;importcom.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems;importcom.datadog.api.client.v2.model.ExperimentsExperimentMetricGroupMutationV2;importcom.datadog.api.client.v2.model.ExperimentsPatchExperimentMetricGroupV2RequestDataType;importjava.util.Collections;importjava.util.UUID;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));ExperimentsApiapiInstance=newExperimentsApi(defaultClient);// there is a valid "experiment" in the systemUUIDEXPERIMENT_DATA_ID=null;try{EXPERIMENT_DATA_ID=UUID.fromString(System.getenv("EXPERIMENT_DATA_ID"));}catch(IllegalArgumentExceptione){System.err.println("Error parsing UUID: "+e.getMessage());}// there is a valid "experiment_metric" in the systemUUIDEXPERIMENT_METRIC_DATA_ID=null;try{EXPERIMENT_METRIC_DATA_ID=UUID.fromString(System.getenv("EXPERIMENT_METRIC_DATA_ID"));}catch(IllegalArgumentExceptione){System.err.println("Error parsing UUID: "+e.getMessage());}ExperimentsCreateExperimentMetricGroupV2Requestbody=newExperimentsCreateExperimentMetricGroupV2Request().data(newExperimentsCreateExperimentMetricGroupV2RequestData().type(ExperimentsPatchExperimentMetricGroupV2RequestDataType.EXPERIMENT_METRIC_GROUPS).attributes(newExperimentsCreateExperimentMetricGroupV2RequestDataAttributes().name("ex-14bb9543f523edde").metrics(Collections.singletonList(newExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems().metricId(EXPERIMENT_METRIC_DATA_ID)))));try{ExperimentsExperimentMetricGroupMutationV2result=apiInstance.createExperimentMetricGroup(EXPERIMENT_DATA_ID,body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling ExperimentsApi#createExperimentMetricGroup");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"java"Example.java"
"""
Create experiment metric group returns "Created" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.experiments_apiimportExperimentsApifromdatadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_requestimport(ExperimentsCreateExperimentMetricGroupV2Request,)fromdatadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_dataimport(ExperimentsCreateExperimentMetricGroupV2RequestData,)fromdatadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_data_attributesimport(ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes,)fromdatadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_data_attributes_metrics_itemsimport(ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems,)fromdatadog_api_client.v2.model.experiments_patch_experiment_metric_group_v2_request_data_typeimport(ExperimentsPatchExperimentMetricGroupV2RequestDataType,)# there is a valid "experiment" in the systemEXPERIMENT_DATA_ID=environ["EXPERIMENT_DATA_ID"]# there is a valid "experiment_metric" in the systemEXPERIMENT_METRIC_DATA_ID=environ["EXPERIMENT_METRIC_DATA_ID"]body=ExperimentsCreateExperimentMetricGroupV2Request(data=ExperimentsCreateExperimentMetricGroupV2RequestData(type=ExperimentsPatchExperimentMetricGroupV2RequestDataType.EXPERIMENT_METRIC_GROUPS,attributes=ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes(name="ex-14bb9543f523edde",metrics=[ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems(metric_id=EXPERIMENT_METRIC_DATA_ID,),],),),)configuration=Configuration()configuration.access_token=environ["DD_BEARER_TOKEN"]withApiClient(configuration)asapi_client:api_instance=ExperimentsApi(api_client)response=api_instance.create_experiment_metric_group(experiment_id=EXPERIMENT_DATA_ID,body=body)print(response)
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"python3"example.py"
# Create experiment metric group returns "Created" responserequire"datadog_api_client"DatadogAPIClient.configuredo|config|config.access_token=ENV["DD_BEARER_TOKEN"]endapi_instance=DatadogAPIClient::V2::ExperimentsAPI.new# there is a valid "experiment" in the systemEXPERIMENT_DATA_ID=ENV["EXPERIMENT_DATA_ID"]# there is a valid "experiment_metric" in the systemEXPERIMENT_METRIC_DATA_ID=ENV["EXPERIMENT_METRIC_DATA_ID"]body=DatadogAPIClient::V2::ExperimentsCreateExperimentMetricGroupV2Request.new({data:DatadogAPIClient::V2::ExperimentsCreateExperimentMetricGroupV2RequestData.new({type:DatadogAPIClient::V2::ExperimentsPatchExperimentMetricGroupV2RequestDataType::EXPERIMENT_METRIC_GROUPS,attributes:DatadogAPIClient::V2::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes.new({name:"ex-14bb9543f523edde",metrics:[DatadogAPIClient::V2::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems.new({metric_id:EXPERIMENT_METRIC_DATA_ID,}),],}),}),})papi_instance.create_experiment_metric_group(EXPERIMENT_DATA_ID,body)
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"rb"example.rb"
// Create experiment metric group returns "Created" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_experiments::ExperimentsAPI;usedatadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2Request;usedatadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestData;usedatadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes;usedatadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems;usedatadog_api_client::datadogV2::model::ExperimentsPatchExperimentMetricGroupV2RequestDataType;#[tokio::main]asyncfnmain(){// there is a valid "experiment" in the system
letexperiment_data_id=uuid::Uuid::parse_str(&std::env::var("EXPERIMENT_DATA_ID").unwrap()).expect("Invalid UUID");// there is a valid "experiment_metric" in the system
letexperiment_metric_data_id=uuid::Uuid::parse_str(&std::env::var("EXPERIMENT_METRIC_DATA_ID").unwrap()).expect("Invalid UUID");letbody=ExperimentsCreateExperimentMetricGroupV2Request::new(ExperimentsCreateExperimentMetricGroupV2RequestData::new(ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes::new("ex-14bb9543f523edde".to_string(),).metrics(vec![ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems::new(experiment_metric_data_id.clone(),),]),ExperimentsPatchExperimentMetricGroupV2RequestDataType::EXPERIMENT_METRIC_GROUPS,),);letconfiguration=datadog::Configuration::new();letapi=ExperimentsAPI::with_config(configuration);letresp=api.create_experiment_metric_group(experiment_data_id.clone(),body).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<DD_API_KEY>"DD_APP_KEY="<DD_APP_KEY>"cargo run
Request a personalized demo
Get Started with Datadog
Ask AI
AI-generated responses may be inaccurate. Verify important info.