7 min read

Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.

POST /v1/universes/{universeId}/standard-datastores/datastore/entries/entry/increment — datastores-api/v1

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.01
roblox-entry-created-time: 2022-02-02T23:30:06.5388799+00:00
roblox-entry-version-created-time: 2022-02-02T23:30:06.5388799+00:00
roblox-entry-attributes: { "myAttribute": "myValue" }
roblox-entry-userids: [1, 2, 3]
HeaderDescription
content-md5The base64-encoded MD5 checksum of the content. See Content-MD5.
roblox-entry-versionThe version of the returned entry.
roblox-entry-created-timeThe time at which the entry was created.
roblox-entry-version-created-timeThe time at which this particular version was created.
roblox-entry-attributesAttributes tagged with the entry. Serialized JSON map object.
roblox-entry-useridsComma-separated list of Roblox user IDs tagged with the entry.

Endpoint

Method: POST

Path: /v1/universes/{universeId}/standard-datastores/datastore/entries/entry/increment

Servers:

Parameters

NameLocationRequiredDescription
universeIdpathtrueThe identifier of the experience with data stores that you want to access. You can find your experience's universe ID on Creator Hub.
datastoreNamequeryfalseThe name of the data store.
entryKeyqueryfalseThe key identifying the entry.
incrementByqueryfalseThe amount by which the entry should be incremented, or the starting value if it doesn't exist.
scopequeryfalseThe value is global by default. See Scopes.
roblox-entry-attributesheaderfalseAttributes to be associated with new version of the entry. Serialized by JSON map objects. If not provided, existing attributes are cleared.
roblox-entry-useridsheaderfalseA comma-separated list of Roblox user IDs that the entry is tagged with. If not provided, existing user IDs are cleared.
[
  {
    "name": "universeId",
    "in": "path",
    "required": true,
    "description": "The identifier of the experience with data stores that you want to access. You can find your experience's universe ID on Creator Hub.",
    "schema": {
      "type": "integer",
      "format": "int64"
    }
  },
  {
    "name": "datastoreName",
    "in": "query",
    "description": "The name of the data store.",
    "schema": {
      "type": "string",
      "nullable": true
    }
  },
  {
    "name": "entryKey",
    "in": "query",
    "description": "The key identifying the entry.",
    "schema": {
      "type": "string",
      "nullable": true
    }
  },
  {
    "name": "incrementBy",
    "in": "query",
    "description": "The amount by which the entry should be incremented, or the starting value if it doesn't exist.",
    "schema": {
      "type": "integer",
      "format": "int64",
      "default": 1
    }
  },
  {
    "name": "scope",
    "in": "query",
    "description": "The value is `global` by default. See [Scopes](/cloud-services/data-stores/index.md#scopes).",
    "schema": {
      "type": "string",
      "default": "global",
      "nullable": true
    }
  },
  {
    "name": "roblox-entry-attributes",
    "in": "header",
    "description": "Attributes to be associated with new version of the entry. Serialized by JSON map objects. If not provided, existing attributes are cleared.",
    "schema": {
      "type": "string",
      "nullable": true
    }
  },
  {
    "name": "roblox-entry-userids",
    "in": "header",
    "description": "A comma-separated list of Roblox user IDs that the entry is tagged with. If not provided, existing user IDs are cleared.",
    "schema": {
      "type": "string",
      "nullable": true
    }
  }
]

Responses

StatusDescription
200Returns the latest version of the entry after it has been incremented.
204The key is marked as deleted.
{
  "200": {
    "description": "Returns the latest version of the entry after it has been incremented.",
    "headers": {
      "content-md5": {
        "schema": {
          "type": "string",
          "format": "byte"
        },
        "description": "The base64-encoded MD5 checksum of the content. See [Content-MD5](/cloud/guides/data-stores/request-handling.md#content-md5)."
      },
      "roblox-entry-version": {
        "schema": {
          "type": "string",
          "format": "binary"
        },
        "description": "The version of the returned entry."
      },
      "roblox-entry-created-time": {
        "schema": {
          "type": "string",
          "format": "date-time"
        },
        "description": "The time at which the entry was created."
      },
      "roblox-entry-version-created-time": {
        "schema": {
          "type": "string",
          "format": "date-time"
        },
        "description": "The time at which this particular version was created."
      },
      "roblox-entry-attributes": {
        "schema": {
          "type": "object"
        },
        "description": "Attributes tagged with the entry. Serialized JSON map object."
      },
      "roblox-entry-userids": {
        "schema": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "description": "Comma-separated list of Roblox user IDs tagged with the entry."
      }
    },
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "description": "The user content of the entry."
        }
      }
    }
  },
  "204": {
    "description": "The key is marked as deleted."
  }
}

Authentication

{
  "security": [
    {
      "roblox-api-key": [
        "universe-datastores.objects:create",
        "universe-datastores.objects:update",
        "universe-datastores.control:create"
      ]
    }
  ],
  "securitySchemes": {
    "roblox-api-key": {
      "type": "apiKey",
      "description": "A configurable key that allows granular access to Roblox resources. See https://create.roblox.com/docs/cloud/auth/api-keys for more information.",
      "in": "header",
      "name": "x-api-key"
    }
  }
}

Complete Operation Definition

{
  "tags": [
    "Entries"
  ],
  "summary": "Increment entry",
  "description": "Increments the value for an entry by a given amount, or create a new entry with that amount. Returns the entry and metadata.\n\nMetadata can be found in the response headers like the following:\n```text\ncontent-md5: zuYxEhwuySMv0i8CitXImw==\nroblox-entry-version: 08D9E6A3F2188CFF.0000000001.08D9E6A3F2188CFF.01\nroblox-entry-created-time: 2022-02-02T23:30:06.5388799+00:00\nroblox-entry-version-created-time: 2022-02-02T23:30:06.5388799+00:00\nroblox-entry-attributes: { \"myAttribute\": \"myValue\" }\nroblox-entry-userids: [1, 2, 3]\n```\n\n| Header | Description |\n|---|---| \n| `content-md5` | The base64-encoded MD5 checksum of the content. See [Content-MD5](/cloud/guides/data-stores/request-handling.md#content-md5). |\n| `roblox-entry-version` | The version of the returned entry. |\n| `roblox-entry-created-time` | The time at which the entry was created. |\n| `roblox-entry-version-created-time` | The time at which this particular version was created. |\n| `roblox-entry-attributes` | Attributes tagged with the entry. Serialized JSON map object. |\n| `roblox-entry-userids` | Comma-separated list of Roblox user IDs tagged with the entry. |\n",
  "operationId": "Entries_IncrementEntryAsync",
  "x-roblox-cloud-api-operation-name": "Increment Entry",
  "x-roblox-stability": "BETA",
  "parameters": [
    {
      "name": "universeId",
      "in": "path",
      "required": true,
      "description": "The identifier of the experience with data stores that you want to access. You can find your experience's universe ID on Creator Hub.",
      "schema": {
        "type": "integer",
        "format": "int64"
      }
    },
    {
      "name": "datastoreName",
      "in": "query",
      "description": "The name of the data store.",
      "schema": {
        "type": "string",
        "nullable": true
      }
    },
    {
      "name": "entryKey",
      "in": "query",
      "description": "The key identifying the entry.",
      "schema": {
        "type": "string",
        "nullable": true
      }
    },
    {
      "name": "incrementBy",
      "in": "query",
      "description": "The amount by which the entry should be incremented, or the starting value if it doesn't exist.",
      "schema": {
        "type": "integer",
        "format": "int64",
        "default": 1
      }
    },
    {
      "name": "scope",
      "in": "query",
      "description": "The value is `global` by default. See [Scopes](/cloud-services/data-stores/index.md#scopes).",
      "schema": {
        "type": "string",
        "default": "global",
        "nullable": true
      }
    },
    {
      "name": "roblox-entry-attributes",
      "in": "header",
      "description": "Attributes to be associated with new version of the entry. Serialized by JSON map objects. If not provided, existing attributes are cleared.",
      "schema": {
        "type": "string",
        "nullable": true
      }
    },
    {
      "name": "roblox-entry-userids",
      "in": "header",
      "description": "A comma-separated list of Roblox user IDs that the entry is tagged with. If not provided, existing user IDs are cleared.",
      "schema": {
        "type": "string",
        "nullable": true
      }
    }
  ],
  "responses": {
    "200": {
      "description": "Returns the latest version of the entry after it has been incremented.",
      "headers": {
        "content-md5": {
          "schema": {
            "type": "string",
            "format": "byte"
          },
          "description": "The base64-encoded MD5 checksum of the content. See [Content-MD5](/cloud/guides/data-stores/request-handling.md#content-md5)."
        },
        "roblox-entry-version": {
          "schema": {
            "type": "string",
            "format": "binary"
          },
          "description": "The version of the returned entry."
        },
        "roblox-entry-created-time": {
          "schema": {
            "type": "string",
            "format": "date-time"
          },
          "description": "The time at which the entry was created."
        },
        "roblox-entry-version-created-time": {
          "schema": {
            "type": "string",
            "format": "date-time"
          },
          "description": "The time at which this particular version was created."
        },
        "roblox-entry-attributes": {
          "schema": {
            "type": "object"
          },
          "description": "Attributes tagged with the entry. Serialized JSON map object."
        },
        "roblox-entry-userids": {
          "schema": {
            "type": "array",
            "items": {
              "type": "integer"
            }
          },
          "description": "Comma-separated list of Roblox user IDs tagged with the entry."
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "description": "The user content of the entry."
          }
        }
      }
    },
    "204": {
      "description": "The key is marked as deleted."
    }
  },
  "security": [
    {
      "roblox-api-key": [
        "universe-datastores.objects:create",
        "universe-datastores.objects:update",
        "universe-datastores.control:create"
      ]
    }
  ],
  "x-roblox-scopes": [
    {
      "name": "universe-datastores.objects:update",
      "description": "If the entry key being incremented exists."
    },
    {
      "name": "universe-datastores.objects:create",
      "description": "If the entry key being incremented doesn't exist."
    },
    {
      "name": "universe-datastores.control:create",
      "description": "If the Data Store the entry key is in doesn't exist."
    }
  ],
  "x-roblox-cloud-api-operation": true,
  "x-roblox-lua-equivalent": "GlobalDataStore:IncrementAsync",
  "x-roblox-cloud-api-operation-code-samples": [
    {
      "language": "curl",
      "script": "curl --include --location --request POST \"https://apis.roblox.com/datastores/v1/universes/3310576216/standard-datastores/datastore/entries/entry/increment\" \\\n--header \"x-api-key: ${API_KEY}\" \\\n--header 'content-length: 0' \\\n--get \\\n-d \"datastoreName=Coins\" \\\n-d \"entryKey=269323\" \\\n-d \"incrementBy=3\""
    }
  ],
  "x-roblox-rate-limits": {
    "description": "See [Throttling](/cloud/guides/data-stores/throttling.md)."
  },
  "x-roblox-recommended-alternatives": [
    {
      "url": "https://apis.roblox.com/cloud/v2/universes/{universe_id}/data-stores/{data_store_id}/entries/{entry_id}:increment",
      "httpMethod": "POST"
    },
    {
      "url": "https://apis.roblox.com/cloud/v2/universes/{universe_id}/data-stores/{data_store_id}/scopes/{scope_id}/entries/{entry_id}:increment",
      "httpMethod": "POST"
    }
  ]
}