Standard data stores
This page includes reference documentation for working with standard data stores. For more information on using the API, see Handle API requests for data stores and the usage guide.
Datastores
List Data Stores
Returns a list of an experience's data stores.
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
Provide to request the next set of data. See Cursors.
The maximum number of items to return. Each call only reads one partition, so it can return fewer than the given value when running out of objectives on one partition.
Provide to return only data stores with this prefix.
Request
curl --include --location --request GET "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "prefix=Player" \
-d "limit=5"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Entries
List Entries
Returns a list of entry keys within a data store.
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The value is global by default. See Scopes.
Set to true to return keys from all scopes.
Provide to return only keys with this prefix.
Provide to request the next set of data. See Cursors.
The maximum number of items to return. Each call only reads one partition, so it can return fewer than the given value when running out of objectives on one partition.
Request
curl --include --location --request GET "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "datastoreName=Coins" \
-d "prefix=" \
-d "limit=5"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Get Entry
Returns the value and metadata associated with an entry.
Metadata can be found in the response headers like the following:
content-md5: zuYxEhwuySMv0i8CitXImw==roblox-entry-version: 08D9E6A3F2188CFF.0000000001.08D9E6A3F2188CFF.01roblox-entry-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-version-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-attributes: { "myAttribute": "myValue" }roblox-entry-userids: [1, 2, 3]
Header | Description |
---|---|
content-md5 | The base-64 encoded MD5 checksum of the content. See Content-MD5. |
roblox-entry-version | The version of the returned entry. |
roblox-entry-created-time | The time at which the entry was created. |
roblox-entry-version-created-time | The time at which this particular version was created. |
roblox-entry-attributes | Attributes tagged with the entry. Serialized JSON map object. |
roblox-entry-userids | Comma-separated list of Roblox user IDs tagged with the entry. |
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
The value is global by default. See Scopes.
Request
curl --include --location --request GET "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "datastoreName=Coins" \
-d "entryKey=269323"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Set Entry
Sets the value, metadata and user IDs associated with an entry.
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
Provide to update only if the current version matches this.
Create the entry only if it does not exist.
The value is global by default. See Scopes.
Attributes to be associated with new version of the entry. Serialized by JSON map objects. If not provided, existing attributes are cleared.
Comma-separated list of Roblox user IDs tagged with the entry. If not provided, existing user IDs are cleared.
The base-64 encoded MD5 checksum of the content. See Content-MD5.
Request
curl --include --location --request POST "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry?datastoreName=Coins&entryKey=269323" \
--header "x-api-key: ${API_KEY}" \
--header "content-md5: IGPBYI1uC6+AJJxC4r5YBA==" \
--header "content-type: application/json" \
--header "roblox-entry-userids: [269323]" \
--header "roblox-entry-attributes: {}" \
--d "value"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Delete Entry
Marks the entry as deleted by creating a tombstone version. Entries are deleted permanently after 30 days.
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
The value is global by default. See Scopes.
Request
curl --include --location --request DELETE "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "datastoreName=Coins" \
-d "entryKey=269323"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Increment Entry
Increments the value for an entry by a given amount, or create a new entry with that amount. Returns the entry and metadata.
Metadata can be found in the response headers like the following:
content-md5: zuYxEhwuySMv0i8CitXImw==roblox-entry-version: 08D9E6A3F2188CFF.0000000001.08D9E6A3F2188CFF.01roblox-entry-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-version-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-attributes: { "myAttribute": "myValue" }roblox-entry-userids: [1, 2, 3]
Header | Description |
---|---|
content-md5 | The base-64 encoded MD5 checksum of the content. See Content-MD5. |
roblox-entry-version | The version of the returned entry. |
roblox-entry-created-time | The time at which the entry was created. |
roblox-entry-version-created-time | The time at which this particular version was created. |
roblox-entry-attributes | Attributes tagged with the entry. Serialized JSON map object. |
roblox-entry-userids | Comma-separated list of Roblox user IDs tagged with the entry. |
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
The amount by which the entry should be incremented, or the starting value if it doesn't exist.
The value is global by default. See Scopes.
Attributes to be associated with new version of the entry. Serialized by JSON map objects. If not provided, existing attributes are cleared.
A comma-separated list of Roblox user IDs that the entry is tagged with. If not provided, existing user IDs are cleared.
Request
curl --include --location --request POST "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry/increment" \
--header "x-api-key: ${API_KEY}" \
--header 'content-length: 0' \
--get \
-d "datastoreName=Coins" \
-d "entryKey=269323" \
-d "incrementBy=3"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Get Entry Version
Returns the value and metadata of a specific version of an entry.
Metadata can be found in the response headers like the following:
content-md5: zuYxEhwuySMv0i8CitXImw==roblox-entry-version: 08D9E6A3F2188CFF.0000000001.08D9E6A3F2188CFF.01roblox-entry-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-version-created-time: 2022-02-02T23:30:06.5388799+00:00roblox-entry-attributes: { "myAttribute": "myValue" }roblox-entry-userids: [1, 2, 3]
Header | Description |
---|---|
content-md5 | The base-64 encoded MD5 checksum of the content. See Content-MD5. |
roblox-entry-version | The version of the returned entry. |
roblox-entry-created-time | The time at which the entry was created. |
roblox-entry-version-created-time | The time at which this particular version was created. |
roblox-entry-attributes | Attributes tagged with the entry. Serialized JSON map object. |
roblox-entry-userids | Comma-separated list of Roblox user IDs tagged with the entry. |
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
The version to inspect.
The value is global by default. See Scopes.
Request
curl --include --location --request GET "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry/versions/version" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "datastoreName=Coins" \
-d "entryKey=269323" \
-d "versionId=08D9E6A3F2188CFF.0000000003.08D9E6DE485A7680.01"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Limits
List Entry Versions
Returns a list of versions for an entry.
Parameters
The identifier of the experience with data stores that you want to access. You can copy your experience's Universe ID on the Creator Dashboard.
The name of the data store.
The key identifying the entry.
The value is global by default. See Scopes.
Provide to request the next set of data (see Cursors).
Provide to not include versions earlier than this timestamp.
Provide to not include versions later than this timestamp.
Either Ascending (earlier versions first) or Descending (later versions first).
The maximum number of items to return. Each call only reads one partition, so it can return fewer than the given value when running out of objectives on one partition.
Request
curl --include --location --request GET "https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry/versions" \
--header "x-api-key: ${API_KEY}" \
--get \
-d "datastoreName=Coins" \
-d "entryKey=269323" \
-d "limit=5"
Response
Required Permissions
The following API key permissions are required to call this endpoint. For more information on generating proper keys, see Manage API keys.
Objects
The following objects describe payloads that are accepted or returned. See each individual endpoint for more information on when these objects are used.DataStore
The data store object with its name and created time.
Attributes
The name of your data store.
The timestamp of when the data store was created in the ISO time format.
EntryVersion
The entry version object returned by the List Entry Versions method.
Attributes
The version name of the qualifying entry.
Indicates whether the entry has been deleted.
The length of the content.
The timestamp of when the version was created in the ISO time format.
The timestamp of when the data store was created in the ISO time format.