Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.
ProductExperiment — openapi
Config-based experiment for a given product. Returned by the Get endpoint and embedded in a successful experiment operation.
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Experiment ID. |
| name | string | false | Experiment display name. |
| description | string | false | Experiment description. |
| createdTime | string | false | UTC time the experiment was created. |
| lastUpdatedTime | string | false | UTC time the experiment was last updated. |
| startedTime | string | false | UTC time the experiment was started (running), if it has been. |
| stoppedTime | string | false | UTC time the experiment was stopped, if it has been. |
| state | false | Lifecycle state. EXPERIMENT_STATE_DRAFT EXPERIMENT_STATE_SCHEDULED EXPERIMENT_STATE_RUNNING EXPERIMENT_STATE_COMPLETED EXPERIMENT_STATE_CANCELLED EXPERIMENT_STATE_DELETED | |
| experimentConfiguration | false | Experiment configuration (variants and product-type-specific data). | |
| exposurePercent | integer | false | Exposure percent in range 0-100. |
| targetingCriteria | false | Targeting criteria scoping which users are eligible for the experiment. | |
| operationalStatus | false | Current operational status of an in-flight async operation (if any). OPERATIONAL_STATUS_READY OPERATIONAL_STATUS_CREATING OPERATIONAL_STATUS_UPDATING OPERATIONAL_STATUS_STARTING OPERATIONAL_STATUS_STOPPING OPERATIONAL_STATUS_SCHEDULING OPERATIONAL_STATUS_DELETING OPERATIONAL_STATUS_RAMPING_UP OPERATIONAL_STATUS_SYNCING OPERATIONAL_STATUS_ROLLING_OUT | |
| createdBy | string | false | User ID of the creator of the experiment. |
| scheduledTime | string | false | UTC time the experiment is scheduled to start, if scheduled. |
| durationSeconds | integer | false | Experiment duration in whole seconds. |
| universeMetricConfiguration | false | Metric configuration (goal + learning metrics). |
Related Schemas
Complete Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Experiment ID.",
"nullable": true
},
"name": {
"type": "string",
"description": "Experiment display name.",
"nullable": true
},
"description": {
"type": "string",
"description": "Experiment description.",
"nullable": true
},
"createdTime": {
"type": "string",
"description": "UTC time the experiment was created.",
"format": "date-time"
},
"lastUpdatedTime": {
"type": "string",
"description": "UTC time the experiment was last updated.",
"nullable": true
},
"startedTime": {
"type": "string",
"description": "UTC time the experiment was started (running), if it has been.",
"nullable": true
},
"stoppedTime": {
"type": "string",
"description": "UTC time the experiment was stopped, if it has been.",
"nullable": true
},
"state": {
"allOf": [
{
"$ref": "#/components/schemas/ExperimentState"
}
],
"description": "Lifecycle state.\n\nEXPERIMENT_STATE_DRAFT\n\nEXPERIMENT_STATE_SCHEDULED\n\nEXPERIMENT_STATE_RUNNING\n\nEXPERIMENT_STATE_COMPLETED\n\nEXPERIMENT_STATE_CANCELLED\n\nEXPERIMENT_STATE_DELETED",
"x-enum-varnames": [
"Draft",
"Scheduled",
"Running",
"Completed",
"Cancelled",
"Deleted"
]
},
"experimentConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/ExperimentConfiguration"
}
],
"description": "Experiment configuration (variants and product-type-specific data).",
"nullable": true
},
"exposurePercent": {
"type": "integer",
"description": "Exposure percent in range 0-100.",
"format": "int32"
},
"targetingCriteria": {
"allOf": [
{
"$ref": "#/components/schemas/TargetingCriteria"
}
],
"description": "Targeting criteria scoping which users are eligible for the experiment.",
"nullable": true
},
"operationalStatus": {
"allOf": [
{
"$ref": "#/components/schemas/OperationalStatus"
}
],
"description": "Current operational status of an in-flight async operation (if any).\n\nOPERATIONAL_STATUS_READY\n\nOPERATIONAL_STATUS_CREATING\n\nOPERATIONAL_STATUS_UPDATING\n\nOPERATIONAL_STATUS_STARTING\n\nOPERATIONAL_STATUS_STOPPING\n\nOPERATIONAL_STATUS_SCHEDULING\n\nOPERATIONAL_STATUS_DELETING\n\nOPERATIONAL_STATUS_RAMPING_UP\n\nOPERATIONAL_STATUS_SYNCING\n\nOPERATIONAL_STATUS_ROLLING_OUT",
"x-enum-varnames": [
"Ready",
"Creating",
"Updating",
"Starting",
"Stopping",
"Scheduling",
"Deleting",
"RampingUp",
"Syncing",
"RollingOut"
]
},
"createdBy": {
"type": "string",
"description": "User ID of the creator of the experiment.",
"nullable": true
},
"scheduledTime": {
"type": "string",
"description": "UTC time the experiment is scheduled to start, if scheduled.",
"nullable": true
},
"durationSeconds": {
"type": "integer",
"description": "Experiment duration in whole seconds.",
"format": "int64"
},
"universeMetricConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/UniverseMetricConfiguration"
}
],
"description": "Metric configuration (goal + learning metrics).",
"nullable": true
}
},
"additionalProperties": false,
"description": "Config-based experiment for a given product. Returned by the Get endpoint and embedded in\r\na successful experiment operation."
}