Create Experiment
https://statsigapi.net/console/v1/experimentsAuthorizations
STATSIG-API-KEYstringrequiredapiKey (header)
Body
application/jsonnamestringrequiredThe experiment display name
descriptionstringA description of the new experiment
idTypestringThe idType the experiment will be performed on
secondaryIDTypestringThe secondary ID type for the experiment used in WHN for ID resolution
identifierMappingModestringThe identifier mapping mode for the experiment used in WHN for ID resolution
identityResolutionSourcestringThe identity resolution entity property source for the experiment used in WHN for ID resolution
hypothesisstringA statement that will be tested by this experiment
linksobject[]Links to relevant documentation or resources
Show child attributes
url[]stringrequiredThe URL of the link
title[]stringThe title of the link
externalEventsobject[]Show child attributes
name[]stringrequiredtimestamp[]numberrequiredgroupsobject[]The test groups for your experiment
Show child attributes
name[]stringrequiredid[]stringsize[]numberrequiredparameterValues[]objectrequireddisabled[]booleandescription[]stringforeignGroupID[]stringhighlighted[]booleanMarks this experiment group as highlighted in analysis views. Highlighted groups are prioritized (shown first) and can be used to filter.
controlGroupIDstringOptional control group ID
allocationnumberPercent of layer allocated to this experiment
userBucketsnumber[]primaryMetricTagsstring[]Primary metric tags for the experiment
secondaryMetricTagsstring[]Secondary metric tags for the experiment
primaryMetricsobject[]Main metrics needed to evaluate your hypothesis
Show child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
secondaryMetricsobject[]Additional metrics to monitor that might impact the analysis or final decision of the experiment
Show child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
otherMetricsobject[]Additional metrics you want to investigate or learn from. The usual corrections applied to Primary and Secondary metrics are not applied to these.
Show child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
targetAppsoneOfTarget apps assigned to this experiment
tagsstring[]Tags associated with the experiment
durationintegerHow long the experiment is expected to last in days
targetExposuresintegerTarget exposures for the experiment
targetingGateIDstringRestrict your experiment to users passing the selected feature gate
sequentialTestingbooleanApply sequential testing?
bonferroniCorrectionbooleanIs Bonferroni correction applied per variant?
bonferroniCorrectionPerMetricbooleanIs Bonferroni correction applied per metric?
benjaminiHochbergPerVariantbooleanIs Benjamini-Hochberg procedure applied per variant?
benjaminiHochbergPerMetricbooleanIs Benjamini-Hochberg procedure applied per metric?
benjaminiPrimaryMetricsOnlybooleanIs Benjamini-Hochberg procedure applied for primary metrics only?
defaultConfidenceIntervalstringDefault error margin used for results
defaultRollupWindowintegerDefault rollup window in days for experiment results. Use -1 for cumulative. Only -1, 1, and 7 allowed for cloud experiments.
defaultChanceToBeatThresholdnumberDefault chance-to-beat threshold used for Bayesian results.
bayesianPriorsobject[]Bayesian prior settings by metric.
Show child attributes
metric[]objectrequiredShow child attributes
namestringrequiredtypestringrequiredpriorMean[]numberrequiredpriorStdDev[]numberrequiredmanualQualityScoresobject[]Up to 10 manually set quality scores for an experiment. The scores and weights will be added to the existing weights and scores, and then weights will be renormalized to 100. This can be set via the Statsig Console API. If targeting a default check, the weight of the check will be updated, but not the status or description. A default score can be removed by setting the weight to 0. The default score identifiers are one of: HYPOTHESIS_LENGTH, BALANCED_EXPOSURE, PRIMARY_METRICS_LENGTH, COMPARISON_CORRECTION, GUARDRAIL_METRIC_TAGS, SUFFICIENT_SAMPLE, POWER_ANALYSIS, SEQUENTIAL_TESTING
Show child attributes
criteriaName[]oneOfrequiredstatus[]stringrequiredcriteriaDescription[]stringrequiredscore[]numberrequiredweight[]numberrequiredstatusstringThe current status of the experiment
launchedGroupIDstringID of the launched group, null otherwise
assignmentSourceNamestringSource name of the assignment
assignmentSourceExperimentNamestringName of the source experiment for assignment
creatorIDstringThe Statsig ID of the creator of this experiment
creatorEmailstringThe email of the creator of this experiment
isAnalysisOnlybooleanFor Warehouse Native
teamstringThe team name associated with the experiment, Enterprise only.
teamIDstringThe team ID associated with the experiment, Enterprise only.
allocationDurationintegerWarehouse Native Only - Allocation duration in days
cohortedAnalysisDurationintegerWarehouse Native Only - Cohorted analysis duration in days
cohortedMetricsMatureAfterEndbooleanWarehouse Native Only - Allow cohort metrics to mature after experiment end
cohortWaitUntilEndToIncludebooleanWarehouse Native Only - Whether to filter to units whose experiment cohort analysis duration is complete, if cohortedAnalysisDuration exists
fixedAnalysisDurationintegerFixed analysis duration in days
scheduledReloadHourintegerWarehouse Native only - UTC hour at which to run scheduled pulse loads
scheduledReloadTypestringWarehouse Native only - reload type for scheduled reloads
scheduledReloadDaysinteger[]Warehouse Native only - days on which to run scheduled reloads from 0 to 6, 0 meaning Sunday. Null to run reloads on all days.
turboModebooleanWarehouse Native only - whether to run scheduled reloads with Turbo mode.
autoLoadToplineImpactbooleanWarehouse Native only - whether to automatically run topline and projected launch impact calculations when reloading experiments.
analysisEndTimestringWarehouse Native only - end time for analysis only experiments
assignmentSourceFiltersobject[]Array of criteria for filtering assignment sources.
Show child attributes
column[]stringColumn to filter on.
condition[]stringrequiredvalues[]string[]Optional array of values for the criterion to match against.
analyticsTypestringThe mode of analysis for the experiment, e.g frequentist, bayesian, sprt
defaultSPRTPowerParamnumberSPRT power parameter percentage used as the default for experiment analysis.
defaultSPRTMDEnumberDefault MDE value for every metric if one isn't provided. Only used in manual mode.
sprtBaselineModestringIn manual mode, mde/mean/stdDev must be provided for every metric in the experiment. In in_experiment_control, only the mde is needed for every metric, or the defaultSPRTMDE field must be passed.
sprtMDESettingsobject[]The SPRT values for use in the experiment.
Show child attributes
metricKey[]stringrequiredgroupSettings[]object[]requiredShow child attributes
groupKey[]stringrequiredmde[]numberrequiredmean[]numberstdDev[]numberisSidecarbooleanWhether this is a Statsig Sidecar experiment.
decisionReasonstringExperiment notes reported after experiment completes
preComputedUserDimensionsobject[]User dimensions that will be computed for every metric in WHN
Show child attributes
propertySource[]stringname[]stringrequiredcureCovariatesobject[]CURE Covariates to use in this experiment
Show child attributes
name[]stringrequiredtype[]stringrequiredstratifiedSamplingobjectThe stratified sampling settings for the experiment
Show child attributes
statusstringrequiredmetricobjectShow child attributes
namestringrequiredtypestringstartDatestringrequiredendDatestringrequiredentityPropertySourceobjectShow child attributes
propertySourceNamestringrequiredcolumnstringrequiredcsvobjectShow child attributes
originalstringrequiredidentifierstringrequireduseStratifiedSaltbooleanWhether successful stratified sampling is currently used for experiment assignment.
useUnitsbooleanWhether stratified sampling was configured to use allocated units directly.
deltaReductionnumberObserved reduction in delta after running stratified sampling.
spreadReductionnumberObserved reduction in spread after running stratified sampling.
enabledNonProdEnvironmentsstring[]idstringThe experiment name ID
layerIDstringWhich layer to place the experiment into.
Response
application/jsonmessagestringrequiredA simple string explaining the result of the operation.
dataobjectrequiredShow child attributes
reviewSettingsobjectShow child attributes
requiredReviewbooleanrequiredallowedReviewersobject[]Show child attributes
id[]stringrequiredname[]stringrequiredemail[]stringrequiredactiveReviewobjectShow child attributes
reviewIDstringrequiredreviewStatusstringrequireddescriptionstringrequiredidstringrequiredID
namestringThe display name of the experiment
idTypestringrequireddescriptionstringrequiredA helpful summary of what this experiment does
lastModifierIDstringrequiredID of the last modifier.
lastModifiedTimenumberrequiredTime of the last modification.
lastModifierEmailstringrequiredEmail of the last modifier.
lastModifierNamestringrequiredName of the last modifier.
creatorIDstringThe Statsig ID of the creator of this experiment
createdTimenumberrequiredTimestamp when the entity was created.
creatorNamestringrequiredName of the creator.
creatorEmailstringThe email of the creator of this experiment
tagsstring[]requiredtargetAppsoneOfTarget apps assigned to this experiment
holdoutIDsstring[]Holdouts applied to this configuration.
teamstringThe team name associated with the experiment, Enterprise only.
teamIDstringThe team ID associated with the experiment, Enterprise only.
versionnumberVersion number
secondaryIDTypestringThe secondary ID type for the experiment used in WHN for ID resolution
identifierMappingModestringThe identifier mapping mode for the experiment used in WHN for ID resolution
identityResolutionSourcestringThe identity resolution entity property source for the experiment used in WHN for ID resolution
hypothesisstringrequiredA statement that will be tested by this experiment
linksobject[]Links to relevant documentation or resources
Show child attributes
url[]stringrequiredThe URL of the link
title[]stringThe title of the link
externalEventsobject[]Show child attributes
name[]stringrequiredtimestamp[]numberrequiredgroupsobject[]requiredThe test groups for your experiment
Show child attributes
name[]stringrequiredid[]stringsize[]numberrequiredparameterValues[]objectrequireddisabled[]booleandescription[]stringforeignGroupID[]stringhighlighted[]booleanMarks this experiment group as highlighted in analysis views. Highlighted groups are prioritized (shown first) and can be used to filter.
controlGroupIDstringOptional control group ID
allocationnumberrequiredPercent of layer allocated to this experiment
userBucketsnumber[]primaryMetricTagsstring[]Primary metric tags for the experiment
secondaryMetricTagsstring[]Secondary metric tags for the experiment
primaryMetricsobject[]requiredShow child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
secondaryMetricsobject[]requiredShow child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
otherMetricsobject[]Additional metrics you want to investigate or learn from. The usual corrections applied to Primary and Secondary metrics are not applied to these.
Show child attributes
name[]stringrequiredThe metric name.
type[]stringrequiredThe metric type.
direction[]stringThe expected direction for one-sided testing (a feature to only measure metric movements in a single direction)
hypothesizedValue[]numberThe comparison value for the one-sample testing (a feature to use a fixed baseline as the control value)
durationintegerHow long the experiment is expected to last in days
targetExposuresintegerTarget exposures for the experiment
targetingGateIDstringrequiredRestrict your experiment to users passing the selected feature gate
sequentialTestingbooleanApply sequential testing?
bonferroniCorrectionbooleanrequiredIs Bonferroni correction applied per variant?
bonferroniCorrectionPerMetricbooleanIs Bonferroni correction applied per metric?
benjaminiHochbergPerVariantbooleanIs Benjamini-Hochberg procedure applied per variant?
benjaminiHochbergPerMetricbooleanIs Benjamini-Hochberg procedure applied per metric?
benjaminiPrimaryMetricsOnlybooleanIs Benjamini-Hochberg procedure applied for primary metrics only?
defaultConfidenceIntervalstringrequiredDefault error margin used for results
defaultRollupWindowintegerDefault rollup window in days for experiment results. Use -1 for cumulative. Only -1, 1, and 7 allowed for cloud experiments.
defaultChanceToBeatThresholdnumberDefault chance-to-beat threshold used for Bayesian results.
bayesianPriorsobject[]Bayesian prior settings by metric.
Show child attributes
metric[]objectrequiredShow child attributes
namestringrequiredtypestringrequiredpriorMean[]numberrequiredpriorStdDev[]numberrequiredmanualQualityScoresobject[]Up to 10 manually set quality scores for an experiment. The scores and weights will be added to the existing weights and scores, and then weights will be renormalized to 100. This can be set via the Statsig Console API. If targeting a default check, the weight of the check will be updated, but not the status or description. A default score can be removed by setting the weight to 0. The default score identifiers are one of: HYPOTHESIS_LENGTH, BALANCED_EXPOSURE, PRIMARY_METRICS_LENGTH, COMPARISON_CORRECTION, GUARDRAIL_METRIC_TAGS, SUFFICIENT_SAMPLE, POWER_ANALYSIS, SEQUENTIAL_TESTING
Show child attributes
criteriaName[]oneOfrequiredstatus[]stringrequiredcriteriaDescription[]stringrequiredscore[]numberrequiredweight[]numberrequiredstatusstringrequiredThe current status of the experiment
launchedGroupIDstringID of the launched group, null otherwise
assignmentSourceNamestringassignmentSourceExperimentNamestringName of the source experiment for assignment
isAnalysisOnlybooleanallocationDurationintegerWarehouse Native Only - Allocation duration in days
cohortedAnalysisDurationintegerWarehouse Native Only - Cohorted analysis duration in days
cohortedMetricsMatureAfterEndbooleanWarehouse Native Only - Allow cohort metrics to mature after experiment end
cohortWaitUntilEndToIncludebooleanWarehouse Native Only - Whether to filter to units whose experiment cohort analysis duration is complete, if cohortedAnalysisDuration exists
fixedAnalysisDurationintegerFixed analysis duration in days
scheduledReloadHourintegerWarehouse Native only - UTC hour at which to run scheduled pulse loads
scheduledReloadTypestringWarehouse Native only - reload type for scheduled reloads
scheduledReloadDaysinteger[]Warehouse Native only - days on which to run scheduled reloads from 0 to 6, 0 meaning Sunday. Null to run reloads on all days.
turboModebooleanWarehouse Native only - whether to run scheduled reloads with Turbo mode.
autoLoadToplineImpactbooleanWarehouse Native only - whether to automatically run topline and projected launch impact calculations when reloading experiments.
analysisEndTimestringassignmentSourceFiltersobject[]Array of criteria for filtering assignment sources.
Show child attributes
column[]stringColumn to filter on.
condition[]stringrequiredvalues[]string[]Optional array of values for the criterion to match against.
analyticsTypestringdefaultSPRTPowerParamnumberdefaultSPRTMDEnumbersprtBaselineModestringsprtMDESettingsobject[]Show child attributes
metricKey[]stringrequiredgroupSettings[]object[]requiredShow child attributes
groupKey[]stringrequiredmde[]numberrequiredmean[]numberstdDev[]numberisSidecarbooleanWhether this is a Statsig Sidecar experiment.
decisionReasonstringrequiredpreComputedUserDimensionsobject[]User dimensions that will be computed for every metric in WHN
Show child attributes
propertySource[]stringname[]stringrequiredcureCovariatesobject[]CURE Covariates to use in this experiment
Show child attributes
name[]stringrequiredtype[]stringrequiredstratifiedSamplingobjectThe stratified sampling settings for the experiment
Show child attributes
statusstringrequiredmetricobjectShow child attributes
namestringrequiredtypestringstartDatestringrequiredendDatestringrequiredentityPropertySourceobjectShow child attributes
propertySourceNamestringrequiredcolumnstringrequiredcsvobjectShow child attributes
originalstringrequiredidentifierstringrequireduseStratifiedSaltbooleanWhether successful stratified sampling is currently used for experiment assignment.
useUnitsbooleanWhether stratified sampling was configured to use allocated units directly.
deltaReductionnumberObserved reduction in delta after running stratified sampling.
spreadReductionnumberObserved reduction in spread after running stratified sampling.
enabledNonProdEnvironmentsstring[]subtypestringexternalExperimentNamestringlayerIDstringrequiredstartTimenumberrequiredendTimenumberrequireddecisionTimenumberrequiredhealthChecksobject[]Show child attributes
name[]stringrequireddescription[]stringrequiredstatus[]stringrequiredmetadata[]objectShow child attributes
typestringrequiredlastPulseLoadTimenumbercrossoverPercentnumberp_valuenumberassignmentSourceIDstringassignmentSourceNamestringforeignExperimentIDstringdeduplication_ratenumberdeduplication_ratesobject[]Show child attributes
group_id[]stringrequiredrate[]numberrequiredgroup_name[]stringrequiredprimary_id_typestringrequiredsecondary_id_typestringmissingMetricsstring[]metricsobject[]Show child attributes
metric_name[]stringrequiredearliest_date[]stringrequiredlatest_date[]stringrequiredlastUpdatedDsstringgroupsobject[]Show child attributes
groupID[]stringrequiredgroupName[]stringrequiredstatus[]stringrequiredmetrics[]object[]requiredShow child attributes
metricKey[]stringrequiredmetricTitle[]stringrequiredstatus[]stringrequiredgroupBucketInfoobject[]Show child attributes
groupID[]stringrequiredaverageBucketSize[]numberrequiredtype[]stringhealthCheckStatusstringrequiredOverall health check status
experimentTypestringrequiredThe type of experiment
isStalebooleanrequiredWhether the experiment is considered stale (e.g. in progress or decision-made and not modified in 30+ days).
ownerobjectSchema for owner data including ID, type, name. Note that if Entity is created by CONSOLE API, owner will be undefined.
Show child attributes
ownerIDstringID of the owner
ownerTypestringType of the owner (e.g., SDK_KEY or USER)
ownerNamestringThe name of the owner. This field is optional.
ownerEmailstringThe email of the owner. This field is optional.
inlineTargetingRulesJSONstringA raw JSON string of the inline targeting rules
inlineTargetingRulesobject[]A formatted array of the inline targeting rules
Show child attributes
name[]stringrequiredThe name of this rule.
passPercentage[]numberrequiredOf the users that meet the conditions of this rule, what percent should return true.
conditions[]object[]requiredAn array of Condition objects.
Show child attributes
targetValue[]oneOfoperator[]stringfield[]stringcustomID[]stringtype[]stringrequiredenvironments[]string[]The environments this rule is enabled for.
id[]stringThe Statsig ID of this rule.
baseID[]stringThe base ID of this rule, i.e. without any added metadata. Will remain the exact same throughout
returnValue[]objectThe return value of the rule.
completedAutomatedRollouts[]object[]Read-only: Automated rollout phases that have already completed.
Show child attributes
time[]numberpassPercent[]numberrequiredpendingAutomatedRollouts[]object[]Read-only: Automated rollout phases that are scheduled but not yet complete.
Show child attributes
time[]numberpassPercent[]numberrequiredqualityScoreobjectThe experiment quality score and per-criterion breakdown.
Show child attributes
scorenumberrequiredThe normalized experiment quality score.
breakdownobject[]requiredThe per-criterion quality score breakdown.
Show child attributes
criterion[]stringrequiredThe quality score criterion name.
status[]stringrequiredThe quality score status for the criterion.
passingDescription[]stringrequiredThe passing description for the criterion.
score[]numberrequiredThe normalized score contribution for this criterion.
weight[]numberrequiredThe normalized weight for this criterion.
summarySectionsobject[]Show child attributes
name[]stringrequiredcontent[]stringrequiredpermalinkstringrequiredA permalink to this experiment in the Statsig Console.
shipWithHoldoutobjectPresent when the experiment has been shipped with a holdback group via make_decision (i.e. the winning variant is live for most users but a control slice is held back for ongoing measurement). Absent for experiments that have not been shipped, or that were shipped fully without a holdback.
Show child attributes
holdoutPercentintegerrequiredInteger percentage of users held back when the experiment was shipped with holdback. Each non-shipped group receives this percentage of traffic and the shipped group receives the remainder.
shippedGroupIDstringrequiredID of the group that was shipped (i.e. the winning variant).
shippedGroupNamestringrequiredName of the group that was shipped.
shippedWithHoldoutTimenumberUnix timestamp (ms) at which the experiment was shipped with holdback.
expectedDurationnumberExpected duration of the holdback period in days, if specified when shipping.
statusintegerrequiredmessagestringrequiredstatusintegerrequiredmessagestringrequiredWas this helpful?