Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.
ConfigSnapshot
Inherits from: Object
An object with the configuration values at a specific version. A snapshot can be targeted to a single player to apply experimentation values. This is returned by ConfigService:GetConfigAsync() and ConfigService:GetConfigForPlayerAsync().
For more information, see Experience configs.
Inherits from: Object
Memory category: Instances
Tags: NotCreatable, NotReplicated
Properties
| Name | Type / Returns | Description |
|---|---|---|
| ConfigSnapshot.Error | ConfigSnapshotErrorState | Populated if snapshot was in an error state. |
| ConfigSnapshot.Outdated | boolean | If true, indicates the snapshot is outdated and can be refreshed to newer values. |
Inherited from Object
| Name | Type / Returns | Description |
|---|---|---|
| Object.ClassName | string | A read-only string representing the class this Object belongs to. |
| Object.className | string |
ConfigSnapshot.Error
Populated if snapshot was in an error state.
| Field | Value |
|---|---|
| type | ConfigSnapshotErrorState |
| tags | ["ReadOnly","NotReplicated"] |
| security | {"read":"None","write":"None"} |
| thread safety | ReadSafe |
| category | Data |
| serialization | {"can_load":false,"can_save":true} |
| capabilities | ["Basic"] |
ConfigSnapshot.Outdated
If true, indicates the snapshot is outdated and can be refreshed to newer values.
| Field | Value |
|---|---|
| type | boolean |
| tags | ["ReadOnly","NotReplicated"] |
| security | {"read":"None","write":"None"} |
| thread safety | ReadSafe |
| category | Data |
| serialization | {"can_load":false,"can_save":true} |
| capabilities | ["Basic"] |
Methods
| Name | Type / Returns | Description |
|---|---|---|
| ConfigSnapshot:GetValue | Variant | Returns the value for the given key. |
| ConfigSnapshot:GetValueChangedSignal | RBXScriptSignal | Returns a signal that fires when the value for the given key changes due to a refresh. |
| ConfigSnapshot:Refresh | () | Refreshes the snapshot to the latest configuration values. |
Inherited from Object
| Name | Type / Returns | Description |
|---|---|---|
| Object:GetPropertyChangedSignal | RBXScriptSignal | Get an event that fires when a given property of the object changes. |
| Object:IsA | boolean | Returns true if an object's class matches or inherits from a given class. |
| Object:isA | boolean |
ConfigSnapshot:GetValue
Returns the value for the provided key in the snapshot.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| key | string | Key of the configuration to get the value for. |
Returns
| Type | Description |
|---|---|
| Variant | The value of the configuration for the given key. |
| Field | Value |
|---|---|
| security | None |
| thread safety | Unsafe |
| capabilities | ["Basic"] |
ConfigSnapshot:GetValueChangedSignal
Returns a signal that fires when the value for the provided key changes after calling ConfigSnapshot:Refresh().
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| key | string | Key of the configuration to get the change signal for. |
Returns
| Type | Description |
|---|---|
| RBXScriptSignal | A DataType.RBXScriptSignal that fires when the value for the given key changes upon refresh. |
| Field | Value |
|---|---|
| security | None |
| thread safety | Unsafe |
| capabilities | ["Basic"] |
ConfigSnapshot:Refresh
Refreshes the snapshot to the latest configuration values from the service. If not called, the snapshot will continue to reflect the values at the time it was created or last refreshed.
Returns
| Type | Description |
|---|---|
| () |
| Field | Value |
|---|---|
| security | None |
| thread safety | Unsafe |
| capabilities | ["Basic"] |
Events
| Name | Type / Returns | Description |
|---|---|---|
| ConfigSnapshot.UpdateAvailable | Fires when a newer version of the configuration is available. |
Inherited from Object
| Name | Type / Returns | Description |
|---|---|---|
| Object.Changed | Fires immediately after a property of the object changes, with some limitations. |
ConfigSnapshot.UpdateAvailable
Fires when a newer version of the configuration is available than the current snapshot. You can perform validation and/or call ConfigSnapshot:Refresh() to update to the latest values.
| Field | Value |
|---|---|
| security | None |
| capabilities | ["Basic"] |