Update experiment analysis plan attributes
https://api.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.us3.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.us5.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.datadoghq.eu/api/v2/experiments/{experiment_id}/analysis-planhttps://api.ap1.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.ap2.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.uk1.datadoghq.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.ddog-gov.com/api/v2/experiments/{experiment_id}/analysis-planhttps://api.us2.ddog-gov.com/api/v2/experiments/{experiment_id}/analysis-planPrésentation
Update selected statistical analysis settings. Omitted attributes remain unchanged and nullable attributes can be cleared with null. Protocol-locked settings cannot be changed.
OAuth apps require the product_analytics_experiments_write authorization scope to access this endpoint.
Arguments
Paramètres du chemin
experiment_id [required]The UUID of the experiment.
Requête
Body Data (required)
data [required]Analysis plan resource to update.
attributesStatistical settings and duration targets to apply to the experiment.
bayesian_priorParameters of the prior distribution to use for Bayesian analysis.
degrees_of_freedomDegrees of freedom of the prior distribution.
standard_deviation [required]Standard deviation of the prior distribution.
confidence_interval_methodStatistical method used to calculate the experiment results.
Sequential, FixedSample, Bayesian, SequentialFixedHybridconfidence_levelConfidence level used for statistical analysis, expressed as a fraction.
cuped_lookback_period_daysOnly a 30-day CUPED lookback is supported.
experiment_auto_end_daysNumber of days configured for the experiment to end automatically.
experiment_min_durationMinimum experiment duration in days configured in the analysis plan.
experiment_min_sample_sizeMinimum sample size configured in the analysis plan.
is_cuped_enabledWhether CUPED uses pre-experiment data to reduce variance in the analysis.
is_multiple_testing_correction_enabledWhether the analysis adjusts for testing multiple hypotheses.
preferential_bonferroni_primary_metric_weightWeight assigned to the primary metric in the preferential Bonferroni correction.
target_duration_daysPlanned experiment duration in days.
idIdentifier of the experiment. If supplied, it must match experiment_id in the path.
type [required]Analysis plans resource type.
analysis-plansanalysis-plans{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}Réponse
OK
Response containing the saved analysis plan and result refresh information.
data [required]Analysis plan resource with its identifier and settings.
attributesStatistical settings and duration targets in the saved analysis plan.
bayesian_priorParameters of the prior distribution used for Bayesian analysis.
degrees_of_freedomDegrees of freedom of the prior distribution.
standard_deviationStandard deviation of the prior distribution.
confidence_interval_methodStatistical method used to calculate the experiment results.
Sequential, FixedSample, Bayesian, SequentialFixedHybridconfidence_levelConfidence level used for statistical analysis, expressed as a fraction.
cuped_lookback_period_daysNumber of days of pre-experiment data used for CUPED variance reduction.
experiment_auto_end_daysNumber of days configured for the experiment to end automatically.
experiment_min_durationMinimum experiment duration in days configured in the analysis plan.
experiment_min_sample_sizeMinimum sample size configured in the analysis plan.
has_custom_analysis_settingsWhether the experiment has custom analysis settings.
is_cuped_enabledWhether CUPED uses pre-experiment data to reduce variance in the analysis.
is_multiple_testing_correction_enabledWhether the analysis adjusts for testing multiple hypotheses.
preferential_bonferroni_primary_metric_weightWeight assigned to the primary metric in the preferential Bonferroni correction.
target_duration_daysPlanned experiment duration in days.
id [required]Identifier of the experiment whose analysis plan is returned.
type [required]Analysis plans resource type.
analysis-plansanalysis-plansmetaRefresh 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": {
"bayesian_prior": {
"degrees_of_freedom": "number",
"standard_deviation": "number"
},
"confidence_interval_method": "Bayesian",
"confidence_level": "number",
"cuped_lookback_period_days": "integer",
"experiment_auto_end_days": "integer",
"experiment_min_duration": "integer",
"experiment_min_sample_size": "integer",
"has_custom_analysis_settings": false,
"is_cuped_enabled": false,
"is_multiple_testing_correction_enabled": false,
"preferential_bonferroni_primary_metric_weight": "number",
"target_duration_days": "integer"
},
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "analysis-plans"
},
"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"
}
]
}The requested change conflicts with settings locked by the experiment protocol.
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"
]
}Exemple de code
# 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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
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 PATCH "https://api.${DD_SITE}/api/v2/experiments/${experiment_id}/analysis-plan" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "analysis-plans",
"id": "550e8400-e29b-41d4-a716-446655440000",
"attributes": {
"confidence_level": 0.9
}
}
}
EOF// Update experiment analysis plan attributes returns "OK" 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"))
body := datadogV2.ExperimentsAnalysisPlanWriteV2Request{
Data: datadogV2.ExperimentsAnalysisPlanWriteV2RequestData{
Type: datadogV2.EXPERIMENTSANALYSISPLANWRITEV2REQUESTDATATYPE_ANALYSIS_PLANS,
Id: datadog.PtrUUID(ExperimentDataID),
Attributes: &datadogV2.ExperimentsAnalysisPlanWriteV2RequestDataAttributes{
ConfidenceLevel: datadog.PtrFloat64(0.9),
},
},
}
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.UpdateExperimentAnalysisPlanAttributes(ctx, ExperimentDataID, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `ExperimentsApi.UpdateExperimentAnalysisPlanAttributes`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `ExperimentsApi.UpdateExperimentAnalysisPlanAttributes`:\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"// Update experiment analysis plan attributes returns "OK" 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.ExperimentsAnalysisPlanV2MutationResponse;
import com.datadog.api.client.v2.model.ExperimentsAnalysisPlanWriteV2Request;
import com.datadog.api.client.v2.model.ExperimentsAnalysisPlanWriteV2RequestData;
import com.datadog.api.client.v2.model.ExperimentsAnalysisPlanWriteV2RequestDataAttributes;
import com.datadog.api.client.v2.model.ExperimentsAnalysisPlanWriteV2RequestDataType;
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());
}
ExperimentsAnalysisPlanWriteV2Request body =
new ExperimentsAnalysisPlanWriteV2Request()
.data(
new ExperimentsAnalysisPlanWriteV2RequestData()
.type(ExperimentsAnalysisPlanWriteV2RequestDataType.ANALYSIS_PLANS)
.id(EXPERIMENT_DATA_ID)
.attributes(
new ExperimentsAnalysisPlanWriteV2RequestDataAttributes()
.confidenceLevel(0.9)));
try {
ExperimentsAnalysisPlanV2MutationResponse result =
apiInstance.updateExperimentAnalysisPlanAttributes(EXPERIMENT_DATA_ID, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println(
"Exception when calling ExperimentsApi#updateExperimentAnalysisPlanAttributes");
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""""
Update experiment analysis plan attributes returns "OK" 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_analysis_plan_write_v2_request import ExperimentsAnalysisPlanWriteV2Request
from datadog_api_client.v2.model.experiments_analysis_plan_write_v2_request_data import (
ExperimentsAnalysisPlanWriteV2RequestData,
)
from datadog_api_client.v2.model.experiments_analysis_plan_write_v2_request_data_attributes import (
ExperimentsAnalysisPlanWriteV2RequestDataAttributes,
)
from datadog_api_client.v2.model.experiments_analysis_plan_write_v2_request_data_type import (
ExperimentsAnalysisPlanWriteV2RequestDataType,
)
# there is a valid "experiment" in the system
EXPERIMENT_DATA_ID = environ["EXPERIMENT_DATA_ID"]
body = ExperimentsAnalysisPlanWriteV2Request(
data=ExperimentsAnalysisPlanWriteV2RequestData(
type=ExperimentsAnalysisPlanWriteV2RequestDataType.ANALYSIS_PLANS,
id=EXPERIMENT_DATA_ID,
attributes=ExperimentsAnalysisPlanWriteV2RequestDataAttributes(
confidence_level=0.9,
),
),
)
configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
api_instance = ExperimentsApi(api_client)
response = api_instance.update_experiment_analysis_plan_attributes(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"# Update experiment analysis plan attributes returns "OK" 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"]
body = DatadogAPIClient::V2::ExperimentsAnalysisPlanWriteV2Request.new({
data: DatadogAPIClient::V2::ExperimentsAnalysisPlanWriteV2RequestData.new({
type: DatadogAPIClient::V2::ExperimentsAnalysisPlanWriteV2RequestDataType::ANALYSIS_PLANS,
id: EXPERIMENT_DATA_ID,
attributes: DatadogAPIClient::V2::ExperimentsAnalysisPlanWriteV2RequestDataAttributes.new({
confidence_level: 0.9,
}),
}),
})
p api_instance.update_experiment_analysis_plan_attributes(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"// Update experiment analysis plan attributes returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_experiments::ExperimentsAPI;
use datadog_api_client::datadogV2::model::ExperimentsAnalysisPlanWriteV2Request;
use datadog_api_client::datadogV2::model::ExperimentsAnalysisPlanWriteV2RequestData;
use datadog_api_client::datadogV2::model::ExperimentsAnalysisPlanWriteV2RequestDataAttributes;
use datadog_api_client::datadogV2::model::ExperimentsAnalysisPlanWriteV2RequestDataType;
#[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");
let body = ExperimentsAnalysisPlanWriteV2Request::new(
ExperimentsAnalysisPlanWriteV2RequestData::new(
ExperimentsAnalysisPlanWriteV2RequestDataType::ANALYSIS_PLANS,
)
.attributes(
ExperimentsAnalysisPlanWriteV2RequestDataAttributes::new().confidence_level(0.9 as f64),
)
.id(experiment_data_id.clone()),
);
let configuration = datadog::Configuration::new();
let api = ExperimentsAPI::with_config(configuration);
let resp = api
.update_experiment_analysis_plan_attributes(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