Create experiment metric group
https://api.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.us3.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.us5.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.datadoghq.eu/api/v2/experiments/{experiment_id}/metric-groupshttps://api.ap1.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.ap2.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.uk1.datadoghq.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.ddog-gov.com/api/v2/experiments/{experiment_id}/metric-groupshttps://api.us2.ddog-gov.com/api/v2/experiments/{experiment_id}/metric-groupsDescripción general
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.
OAuth apps require the product_analytics_experiments_write authorization scope to access this endpoint.
Argumentos
Parámetros de ruta
experiment_id [required]The UUID of the experiment.
Solicitud
Body Data (required)
data [required]Metric group resource to create on the experiment.
attributes [required]Name and metric selection for the new experiment metric group.
metricsMetrics to include in the experiment metric group.
metric_id [required]Identifier of the metric to include in the group.
migration_metadataMetadata associated with migration of this resource.
name [required]Display name of the experiment metric group.
idOptional JSON:API resource identifier field.
type [required]Experiment metric groups resource type.
experiment-metric-groupsexperiment-metric-groups{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}Respuesta
Created
Response containing the saved experiment metric group and result refresh information.
data [required]Experiment metric group resource with its identifier and metric selection.
attributesName, purpose, and selected metrics of an experiment metric group.
is_decisionWhether this group contains the experiment decision metrics.
metricsMetrics selected for this experiment metric group.
is_primary [required]Whether this is the experiment primary metric.
metric_id [required]Identifier of the metric in the group.
metric_name [required]Display name of the metric in the group.
migration_metadataMetadata associated with migration of this resource.
nameDisplay name of the experiment metric group.
id [required]Identifier of the experiment metric group.
type [required]Experiment metric groups resource type.
experiment-metric-groupsexperiment-metric-groupsmetaRefresh requirements and warnings returned by an experiment update.
needs_pipeline_refresh [required]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_endpointPOST 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.
warningsWarnings returned after the experiment update.
code [required]Code that identifies the warning.
detail [required]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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort 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.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Ejemplo de código
# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF# Path parameters
export experiment_id="550e8400-e29b-41d4-a716-446655440000"
# 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/experiments/${experiment_id}/metric-groups" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "experiment-metric-groups",
"attributes": {
"name": "ex-14bb9543f523edde",
"metrics": [
{
"metric_id": "550e8400-e29b-41d4-a716-446655440002"
}
]
}
}
}
EOF// Create experiment metric group returns "Created" response
package main
import (
"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"
)
func main() {
// there is a valid "experiment" in the system
ExperimentDataID := uuid.MustParse(os.Getenv("EXPERIMENT_DATA_ID"))
// there is a valid "experiment_metric" in the system
ExperimentMetricDataID := 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)
if err != 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)
}
Instructions
First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"// Create experiment metric group returns "Created" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.ExperimentsApi;
import com.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2Request;
import com.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestData;
import com.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes;
import com.datadog.api.client.v2.model.ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems;
import com.datadog.api.client.v2.model.ExperimentsExperimentMetricGroupMutationV2;
import com.datadog.api.client.v2.model.ExperimentsPatchExperimentMetricGroupV2RequestDataType;
import java.util.Collections;
import java.util.UUID;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
ExperimentsApi apiInstance = new ExperimentsApi(defaultClient);
// there is a valid "experiment" in the system
UUID EXPERIMENT_DATA_ID = null;
try {
EXPERIMENT_DATA_ID = UUID.fromString(System.getenv("EXPERIMENT_DATA_ID"));
} catch (IllegalArgumentException e) {
System.err.println("Error parsing UUID: " + e.getMessage());
}
// there is a valid "experiment_metric" in the system
UUID EXPERIMENT_METRIC_DATA_ID = null;
try {
EXPERIMENT_METRIC_DATA_ID = UUID.fromString(System.getenv("EXPERIMENT_METRIC_DATA_ID"));
} catch (IllegalArgumentException e) {
System.err.println("Error parsing UUID: " + e.getMessage());
}
ExperimentsCreateExperimentMetricGroupV2Request body =
new ExperimentsCreateExperimentMetricGroupV2Request()
.data(
new ExperimentsCreateExperimentMetricGroupV2RequestData()
.type(
ExperimentsPatchExperimentMetricGroupV2RequestDataType
.EXPERIMENT_METRIC_GROUPS)
.attributes(
new ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes()
.name("ex-14bb9543f523edde")
.metrics(
Collections.singletonList(
new ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems()
.metricId(EXPERIMENT_METRIC_DATA_ID)))));
try {
ExperimentsExperimentMetricGroupMutationV2 result =
apiInstance.createExperimentMetricGroup(EXPERIMENT_DATA_ID, body);
System.out.println(result);
} catch (ApiException e) {
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();
}
}
}
Instructions
First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java""""
Create experiment metric group returns "Created" response
"""
from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.experiments_api import ExperimentsApi
from datadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request import (
ExperimentsCreateExperimentMetricGroupV2Request,
)
from datadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_data import (
ExperimentsCreateExperimentMetricGroupV2RequestData,
)
from datadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_data_attributes import (
ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes,
)
from datadog_api_client.v2.model.experiments_create_experiment_metric_group_v2_request_data_attributes_metrics_items import (
ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems,
)
from datadog_api_client.v2.model.experiments_patch_experiment_metric_group_v2_request_data_type import (
ExperimentsPatchExperimentMetricGroupV2RequestDataType,
)
# there is a valid "experiment" in the system
EXPERIMENT_DATA_ID = environ["EXPERIMENT_DATA_ID"]
# there is a valid "experiment_metric" in the system
EXPERIMENT_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"]
with ApiClient(configuration) as api_client:
api_instance = ExperimentsApi(api_client)
response = api_instance.create_experiment_metric_group(experiment_id=EXPERIMENT_DATA_ID, body=body)
print(response)
Instructions
First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"# Create experiment metric group returns "Created" response
require "datadog_api_client"
DatadogAPIClient.configure do |config|
config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V2::ExperimentsAPI.new
# there is a valid "experiment" in the system
EXPERIMENT_DATA_ID = ENV["EXPERIMENT_DATA_ID"]
# there is a valid "experiment_metric" in the system
EXPERIMENT_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,
}),
],
}),
}),
})
p api_instance.create_experiment_metric_group(EXPERIMENT_DATA_ID, body)
Instructions
First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"// Create experiment metric group returns "Created" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_experiments::ExperimentsAPI;
use datadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2Request;
use datadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestData;
use datadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes;
use datadog_api_client::datadogV2::model::ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems;
use datadog_api_client::datadogV2::model::ExperimentsPatchExperimentMetricGroupV2RequestDataType;
#[tokio::main]
async fn main() {
// there is a valid "experiment" in the system
let experiment_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
let experiment_metric_data_id =
uuid::Uuid::parse_str(&std::env::var("EXPERIMENT_METRIC_DATA_ID").unwrap())
.expect("Invalid UUID");
let body = ExperimentsCreateExperimentMetricGroupV2Request::new(
ExperimentsCreateExperimentMetricGroupV2RequestData::new(
ExperimentsCreateExperimentMetricGroupV2RequestDataAttributes::new(
"ex-14bb9543f523edde".to_string(),
)
.metrics(vec![
ExperimentsCreateExperimentMetricGroupV2RequestDataAttributesMetricsItems::new(
experiment_metric_data_id.clone(),
),
]),
ExperimentsPatchExperimentMetricGroupV2RequestDataType::EXPERIMENT_METRIC_GROUPS,
),
);
let configuration = datadog::Configuration::new();
let api = ExperimentsAPI::with_config(configuration);
let resp = api
.create_experiment_metric_group(experiment_data_id.clone(), body)
.await;
if let Ok(value) = resp {
println!("{:#?}", value);
} else {
println!("{:#?}", resp.unwrap_err());
}
}
Instructions
First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us3.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us5.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="datadoghq.eu" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ap2.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="uk1.datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo runDD_SITE="us2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run