Skip to content

Cloud v2

OpenCloud v2 reference — the newer unified Cloud API covering a broad range of Roblox resources.

Base URL: https://apis.roblox.com

Method Path Name
POST /cloud/v2/creator-store-products postCloudV2CreatorStoreProducts
GET /cloud/v2/creator-store-products/:creator_store_product_id getCloudV2CreatorStoreProductsCreatorStoreProductId
PATCH /cloud/v2/creator-store-products/:creator_store_product_id patchCloudV2CreatorStoreProductsCreatorStoreProductId
GET /cloud/v2/groups/:group_id getCloudV2GroupsGroupId
GET /cloud/v2/groups/:group_id/forum-categories getCloudV2GroupsGroupIdForumCategories
GET /cloud/v2/groups/:group_id/forum-categories/:forum_category_id/posts getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPosts
GET /cloud/v2/groups/:group_id/forum-categories/:forum_category_id/posts/:post_id/comments getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPostsPostIdComments
GET /cloud/v2/groups/:group_id/join-requests getCloudV2GroupsGroupIdJoinRequests
POST /cloud/v2/groups/:group_id/join-requests/:join_request_id:accept postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdAccept
POST /cloud/v2/groups/:group_id/join-requests/:join_request_id:decline postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdDecline
GET /cloud/v2/groups/:group_id/memberships getCloudV2GroupsGroupIdMemberships
PATCH /cloud/v2/groups/:group_id/memberships/:membership_id patchCloudV2GroupsGroupIdMembershipsMembershipId
POST /cloud/v2/groups/:group_id/memberships/:membership_id:assignRole postCloudV2GroupsGroupIdMembershipsMembershipIdAssignRole
POST /cloud/v2/groups/:group_id/memberships/:membership_id:unassignRole postCloudV2GroupsGroupIdMembershipsMembershipIdUnassignRole
GET /cloud/v2/groups/:group_id/roles getCloudV2GroupsGroupIdRoles
GET /cloud/v2/groups/:group_id/roles/:role_id getCloudV2GroupsGroupIdRolesRoleId
GET /cloud/v2/universes/:universe_id getCloudV2UniversesUniverseId
PATCH /cloud/v2/universes/:universe_id patchCloudV2UniversesUniverseId
POST /cloud/v2/universes/:universe_id:generateSpeechAsset postCloudV2UniversesUniverseIdGenerateSpeechAsset
POST /cloud/v2/universes/:universe_id:publishMessage postCloudV2UniversesUniverseIdPublishMessage
POST /cloud/v2/universes/:universe_id:restartServers postCloudV2UniversesUniverseIdRestartServers
POST /cloud/v2/universes/:universe_id:translateText postCloudV2UniversesUniverseIdTranslateText
GET /cloud/v2/universes/:universe_id/data-stores getCloudV2UniversesUniverseIdDataStores
POST /cloud/v2/universes/:universe_id/data-stores:snapshot postCloudV2UniversesUniverseIdDataStoresSnapshot
DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id deleteCloudV2UniversesUniverseIdDataStoresDataStoreId
POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id:undelete postCloudV2UniversesUniverseIdDataStoresDataStoreIdUndelete
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries
POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId
DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId
PATCH /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id patchCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId
POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id:increment postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdIncrement
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id:listRevisions getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdListRevisions
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries
POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId
DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId
PATCH /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id patchCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId
POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id:increment postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdIncrement
GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id:listRevisions getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdListRevisions
POST /cloud/v2/universes/:universe_id/luau-execution-session-task-binary-inputs postCloudV2UniversesUniverseIdLuauExecutionSessionTaskBinaryInputs
POST /cloud/v2/universes/:universe_id/memory-store:flush postCloudV2UniversesUniverseIdMemoryStoreFlush
POST /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItems
POST /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items:discard postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsDiscard
GET /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items:read getCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsRead
GET /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems
POST /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items postCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems
GET /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId
DELETE /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id deleteCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId
PATCH /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id patchCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId
GET /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries
POST /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries
GET /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId
DELETE /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id deleteCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId
PATCH /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id patchCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId
POST /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id:increment postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryIdIncrement
GET /cloud/v2/universes/:universe_id/places/:place_id getCloudV2UniversesUniverseIdPlacesPlaceId
PATCH /cloud/v2/universes/:universe_id/places/:place_id patchCloudV2UniversesUniverseIdPlacesPlaceId
GET /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId
PATCH /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id patchCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId
GET /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id:listChildren getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceIdListChildren
POST /cloud/v2/universes/:universe_id/places/:place_id/luau-execution-session-tasks postCloudV2UniversesUniverseIdPlacesPlaceIdLuauExecutionSessionTasks
GET /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictions
GET /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions/:user_restriction_id getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId
PATCH /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions/:user_restriction_id patchCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId
POST /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-session-tasks postCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionTasks
GET /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-sessions/:luau_execution_session_id/tasks/:task_id getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskId
GET /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-sessions/:luau_execution_session_id/tasks/:task_id/logs getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskIdLogs
GET /cloud/v2/universes/:universe_id/subscription-products/:subscription_product_id/subscriptions/:subscription_id getCloudV2UniversesUniverseIdSubscriptionProductsSubscriptionProductIdSubscriptionsSubscriptionId
GET /cloud/v2/universes/:universe_id/user-restrictions getCloudV2UniversesUniverseIdUserRestrictions
GET /cloud/v2/universes/:universe_id/user-restrictions:listLogs getCloudV2UniversesUniverseIdUserRestrictionsListLogs
GET /cloud/v2/universes/:universe_id/user-restrictions/:user_restriction_id getCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId
PATCH /cloud/v2/universes/:universe_id/user-restrictions/:user_restriction_id patchCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId
GET /cloud/v2/users/:user_id/asset-quotas getCloudV2UsersUserIdAssetQuotas
POST /cloud/v2/users/:user_id/notifications postCloudV2UsersUserIdNotifications
GET /cloud/v2/users/:user_id getCloudV2UsersUserId
GET /cloud/v2/users/:user_id:generateThumbnail getCloudV2UsersUserIdGenerateThumbnail
GET /cloud/v2/users/:user_id/inventory-items getCloudV2UsersUserIdInventoryItems

POST /cloud/v2/creator-store-products

BETA Add a Creator Store product. Only use this method if your product has never been distributed on the Creator Store; otherwise, use the PATCH method to update the product. Engine: Not available in-engine

Scopes: creator-store-product:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2CreatorStoreProducts } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2CreatorStoreProducts, {
body: { /* ... */ }
});
Field Type Description
path string
basePrice object See below
purchasePrice object See below
published boolean
restrictions `“RESTRICTION_UNSPECIFIED” “SOLD_ITEM_RESTRICTED”
purchasable boolean
userSeller string
groupSeller string
modelAssetId string
pluginAssetId string
audioAssetId string
decalAssetId string
meshPartAssetId string
videoAssetId string
fontFamilyAssetId string

basePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

purchasePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number
Field Type Description
path string
basePrice object See below
purchasePrice object See below
published boolean
restrictions `“RESTRICTION_UNSPECIFIED” “SOLD_ITEM_RESTRICTED”
purchasable boolean
userSeller string
groupSeller string
modelAssetId string
pluginAssetId string
audioAssetId string
decalAssetId string
meshPartAssetId string
videoAssetId string
fontFamilyAssetId string

basePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

purchasePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

getCloudV2CreatorStoreProductsCreatorStoreProductId

Section titled “getCloudV2CreatorStoreProductsCreatorStoreProductId”

GET /cloud/v2/creator-store-products/:creator_store_product_id

BETA Get a Creator Store product. Engine: Not available in-engine

Scopes: creator-store-product:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2CreatorStoreProductsCreatorStoreProductId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2CreatorStoreProductsCreatorStoreProductId, {
creator_store_product_id: /* string */
});
Name Type Required Description
creator_store_product_id string Yes The creator-store-product ID.
Field Type Description
path string
basePrice object See below
purchasePrice object See below
published boolean
restrictions `“RESTRICTION_UNSPECIFIED” “SOLD_ITEM_RESTRICTED”
purchasable boolean
userSeller string
groupSeller string
modelAssetId string
pluginAssetId string
audioAssetId string
decalAssetId string
meshPartAssetId string
videoAssetId string
fontFamilyAssetId string

basePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

purchasePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

patchCloudV2CreatorStoreProductsCreatorStoreProductId

Section titled “patchCloudV2CreatorStoreProductsCreatorStoreProductId”

PATCH /cloud/v2/creator-store-products/:creator_store_product_id

BETA Update a Creator Store product. Engine: Not available in-engine

Scopes: creator-store-product:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2CreatorStoreProductsCreatorStoreProductId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2CreatorStoreProductsCreatorStoreProductId, {
creator_store_product_id: /* string */,
updateMask: /* string? */,
allowMissing: /* boolean? */,
body: { /* ... */ }
});
Name Type Required Description
creator_store_product_id string Yes The creator-store-product ID.
updateMask string? No The list of fields to update.
allowMissing boolean? No If set to true, and the creator store product is not found, a creator store product is created. In this situation, update_mask is ignored.

All fields are optional (PATCH partial update)

Field Type Description
path string
basePrice object See below
purchasePrice object See below
published boolean
restrictions `“RESTRICTION_UNSPECIFIED” “SOLD_ITEM_RESTRICTED”
purchasable boolean
userSeller string
groupSeller string
modelAssetId string
pluginAssetId string
audioAssetId string
decalAssetId string
meshPartAssetId string
videoAssetId string
fontFamilyAssetId string

basePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

purchasePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number
Field Type Description
path string
basePrice object See below
purchasePrice object See below
published boolean
restrictions `“RESTRICTION_UNSPECIFIED” “SOLD_ITEM_RESTRICTED”
purchasable boolean
userSeller string
groupSeller string
modelAssetId string
pluginAssetId string
audioAssetId string
decalAssetId string
meshPartAssetId string
videoAssetId string
fontFamilyAssetId string

basePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

purchasePrice fields:

Field Type Description
currencyCode string
quantity object See below

quantity fields:

Field Type Description
significand number
exponent number

GET /cloud/v2/groups/:group_id

BETA Gets the specified group. Engine: Usable with HttpService

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupId, {
group_id: /* string */
});
Name Type Required Description
group_id string Yes The group ID.
Field Type Description
path string
createTime string
updateTime string
id string
displayName string
description string
owner string
memberCount number
publicEntryAllowed boolean
locked boolean
verified boolean

GET /cloud/v2/groups/:group_id/forum-categories

BETA Lists forum categories in the group. Supports filtering. Engine: Usable with HttpService

Scopes: group-forum:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdForumCategories } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdForumCategories, {
group_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
group_id string Yes The group ID.
maxPageSize integer? No The maximum number of group forum categories to return. The service might return fewer than this value. If unspecified, at most 10 group forum categories are returned. The maximum value is 10 and higher values are set to 10.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. Filtering conforms to Common Expression Language (CEL). Only the boolean field archived and == operator are supported. If archived=false, archived categories are not returned. The default value is false. Example: "filter=archived==true"
Field Type Description
groupForumCategories object[] See below
nextPageToken string

groupForumCategories[] item fields:

Field Type Description
path string
createTime string
updateTime string
groupForumCategoryId string
displayName string
creator string
archiveTime string
archiver string

getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPosts

Section titled “getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPosts”

GET /cloud/v2/groups/:group_id/forum-categories/:forum_category_id/posts

BETA Lists forum posts in the group’s forum category. Supports filtering. Engine: Usable with HttpService

Scopes: group-forum:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPosts } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPosts, {
group_id: /* string */,
forum_category_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */,
view: /* enum */
});
Name Type Required Description
group_id string Yes The group ID.
forum_category_id string Yes The forum-category ID.
maxPageSize integer? No The maximum number of group forum posts to return. The service might return fewer than this value. If unspecified, at most 10 group forum posts are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. Filtering conforms to Common Expression Language (CEL). Only the query filter=pinned==true is supported, where only pinned posts are returned. filter=pinned==falseis not supported.
view enum Yes The view in which to retrieve the group forum post. Supports FULL and FULL_WITH_FIRST_COMMENT. Defaults to FULL. Possible values: | Value | Description | | — | — | | VIEW_UNSPECIFIED | The group forum post view is not specified; the default will be used. | | FULL | Includes all fields but does not dereference first_comment. Only the path field is populated. | | FULL_WITH_FIRST_COMMENT | Includes all fields and also fully populates first_comment. The default view. |
Field Type Description
groupForumPosts object[] See below
nextPageToken string

groupForumPosts[] item fields:

Field Type Description
path string
createTime string
updateTime string
pinned boolean
locked boolean
groupForumPostId string
title string
firstComment object See below
author string
archiveTime string
archiver string
commentCount number

firstComment fields:

Field Type Description
path string
groupForumCommentId string
message object See below

message fields:

Field Type Description
createTime string
updateTime string
plainText string
author string
messageReaction object[] See below

messageReaction[] item fields:

Field Type Description
emoteId object
count object

getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPostsPostIdComments

Section titled “getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPostsPostIdComments”

GET /cloud/v2/groups/:group_id/forum-categories/:forum_category_id/posts/:post_id/comments

BETA Lists forum comments on a group’s forum post. Supports filtering. Engine: Usable with HttpService

Scopes: group-forum:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPostsPostIdComments } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdForumCategoriesForumCategoryIdPostsPostIdComments, {
group_id: /* string */,
forum_category_id: /* string */,
post_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
group_id string Yes The group ID.
forum_category_id string Yes The forum-category ID.
post_id string Yes The post ID.
maxPageSize integer? No The maximum number of group forum comments to return. The service might return fewer than this value. If unspecified, at most 10 group forum comments are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. Filtering conforms to Common Expression Language (CEL). Only the string field repliesToCommentId and the == operator are supported. If repliesToCommentId is specified, only comments that respond to the comment are returned. The default value is ''. If repliesToCommentId='', only comments responding directly to the post are returned. Example: "filter=repliesToCommentId==01234567-89ab-cdef-0123-456789abcdef"
Field Type Description
groupForumComments object[] See below
nextPageToken string

groupForumComments[] item fields:

Field Type Description
path string
groupForumCommentId string
message object See below

message fields:

Field Type Description
createTime string
updateTime string
plainText string
author string
messageReaction object[] See below

messageReaction[] item fields:

Field Type Description
emoteId string
count number

GET /cloud/v2/groups/:group_id/join-requests

BETA List join requests under a group. Supports filtering. Engine: Usable with HttpService

Scopes: group:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdJoinRequests } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdJoinRequests, {
group_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
group_id string Yes The group ID.
maxPageSize integer? No The maximum number of group join requests to return. The service might return fewer than this value. If unspecified, at most 10 group join requests are returned. The maximum value is 20 and higher values are set to 20.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. Filtering conforms to Common Expression Language (CEL). Only the user field and == operator are supported. Example: "user == 'users/156'"
Field Type Description
groupJoinRequests object[] See below
nextPageToken string

groupJoinRequests[] item fields:

Field Type Description
path string
createTime string
user string

postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdAccept

Section titled “postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdAccept”

POST /cloud/v2/groups/:group_id/join-requests/:join_request_id:accept

BETA Accepts a join request. Engine: Usable with HttpService

Scopes: group:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdAccept } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdAccept, {
group_id: /* string */,
join_request_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
group_id string Yes The group ID.
join_request_id string Yes The join-request ID.

Type: unknown

Type: unknown


postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdDecline

Section titled “postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdDecline”

POST /cloud/v2/groups/:group_id/join-requests/:join_request_id:decline

BETA Declines a join request. Engine: Usable with HttpService

Scopes: group:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdDecline } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2GroupsGroupIdJoinRequestsJoinRequestIdDecline, {
group_id: /* string */,
join_request_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
group_id string Yes The group ID.
join_request_id string Yes The join-request ID.

Type: unknown

Type: unknown


GET /cloud/v2/groups/:group_id/memberships

BETA List group members in a group. Supports filtering. Engine: Usable with HttpService

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdMemberships } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdMemberships, {
group_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
group_id string Yes The group ID.
maxPageSize integer? No The maximum number of group memberships to return. The service might return fewer than this value. If unspecified, at most 10 group memberships are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. See the filtering documentation for more information.
Field Type Description
groupMemberships object[] See below
nextPageToken string

groupMemberships[] item fields:

Field Type Description
path string
createTime string
updateTime string
user string
role string
roles string[]

patchCloudV2GroupsGroupIdMembershipsMembershipId

Section titled “patchCloudV2GroupsGroupIdMembershipsMembershipId”

PATCH /cloud/v2/groups/:group_id/memberships/:membership_id

BETA Deprecated. Use AssignGroupRole and UnassignGroupRole instead. Updates the group membership for a particular group member. This action requires the requester to be able to assign or remove roles below their highest role. The requester cannot change their own roles. Engine: Usable with HttpService

Scopes: group:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2GroupsGroupIdMembershipsMembershipId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2GroupsGroupIdMembershipsMembershipId, {
group_id: /* string */,
membership_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
group_id string Yes The group ID.
membership_id string Yes The membership ID.

All fields are optional (PATCH partial update)

Field Type Description
path string
createTime string
updateTime string
user string
role string
roles string[]
Field Type Description
path string
createTime string
updateTime string
user string
role string
roles string[]

postCloudV2GroupsGroupIdMembershipsMembershipIdAssignRole

Section titled “postCloudV2GroupsGroupIdMembershipsMembershipIdAssignRole”

POST /cloud/v2/groups/:group_id/memberships/:membership_id:assignRole

BETA Assigns a specific role to a user within a group. If the user already holds the specified role, no action is taken. Engine: Usable with HttpService

Scopes: group:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2GroupsGroupIdMembershipsMembershipIdAssignRole } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2GroupsGroupIdMembershipsMembershipIdAssignRole, {
group_id: /* string */,
membership_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
group_id string Yes The group ID.
membership_id string Yes The membership ID.
Field Type Description
role string
Field Type Description
path string
createTime string
updateTime string
user string
role string
roles string[]

postCloudV2GroupsGroupIdMembershipsMembershipIdUnassignRole

Section titled “postCloudV2GroupsGroupIdMembershipsMembershipIdUnassignRole”

POST /cloud/v2/groups/:group_id/memberships/:membership_id:unassignRole

BETA Unassigns a specific role from a user within a group. If the user does not hold the specified role, no action is taken. Engine: Usable with HttpService

Scopes: group:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2GroupsGroupIdMembershipsMembershipIdUnassignRole } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2GroupsGroupIdMembershipsMembershipIdUnassignRole, {
group_id: /* string */,
membership_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
group_id string Yes The group ID.
membership_id string Yes The membership ID.
Field Type Description
role string
Field Type Description
path string
createTime string
updateTime string
user string
role string
roles string[]

GET /cloud/v2/groups/:group_id/roles

BETA List roles in a group. Roles can be public or private. The response includes private roles and their fields only when the acting user is permitted to view them. The endpoint does not provide a public-roles-only view. The permissions field for roles is viewable based on the requester’s access and scopes. Permissions for the guest role are always visible - a scope is not needed. If the requester is a member of the group and has the group:read scope, permissions in their role are visible. If the requester is the owner of the group and has the group:read scope, permissions in all roles are visible. Engine: Usable with HttpService

Scopes: group:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdRoles } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdRoles, {
group_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */
});
Name Type Required Description
group_id string Yes The group ID.
maxPageSize integer? No The maximum number of group roles to return. The service might return fewer than this value. If unspecified, at most 10 group roles are returned. The maximum value is 20 and higher values are set to 20.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
Field Type Description
groupRoles object[] See below
nextPageToken string

groupRoles[] item fields:

Field Type Description
path string
createTime string
updateTime string
id string
displayName string
description string
rank number
memberCount number
permissions object See below

permissions fields:

Field Type Description
viewWallPosts boolean
createWallPosts boolean
deleteWallPosts boolean
viewGroupShout boolean
createGroupShout boolean
changeRank boolean
acceptRequests boolean
exileMembers boolean
manageRelationships boolean
viewAuditLog boolean
spendGroupFunds boolean
advertiseGroup boolean
createAvatarItems boolean
manageAvatarItems boolean
manageGroupUniverses boolean
viewUniverseAnalytics boolean
createApiKeys boolean
manageApiKeys boolean
banMembers boolean
viewForums boolean
manageCategories boolean
createPosts boolean
lockPosts boolean
pinPosts boolean
removePosts boolean
createComments boolean
removeComments boolean
manageBlockedWords boolean
viewBlockedWords boolean
bypassSlowMode boolean

GET /cloud/v2/groups/:group_id/roles/:role_id

BETA Get the group role Engine: Usable with HttpService

Scopes: group:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2GroupsGroupIdRolesRoleId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2GroupsGroupIdRolesRoleId, {
group_id: /* string */,
role_id: /* string */
});
Name Type Required Description
group_id string Yes The group ID.
role_id string Yes The role ID.
Field Type Description
path string
createTime string
updateTime string
id string
displayName string
description string
rank number
memberCount number
permissions object See below

permissions fields:

Field Type Description
viewWallPosts boolean
createWallPosts boolean
deleteWallPosts boolean
viewGroupShout boolean
createGroupShout boolean
changeRank boolean
acceptRequests boolean
exileMembers boolean
manageRelationships boolean
viewAuditLog boolean
spendGroupFunds boolean
advertiseGroup boolean
createAvatarItems boolean
manageAvatarItems boolean
manageGroupUniverses boolean
viewUniverseAnalytics boolean
createApiKeys boolean
manageApiKeys boolean
banMembers boolean
viewForums boolean
manageCategories boolean
createPosts boolean
lockPosts boolean
pinPosts boolean
removePosts boolean
createComments boolean
removeComments boolean
manageBlockedWords boolean
viewBlockedWords boolean
bypassSlowMode boolean

GET /cloud/v2/universes/:universe_id

STABLE Gets the specified universe. Engine: Not available in-engine

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseId, {
universe_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
user string | undefined
group string | undefined
visibility `“VISIBILITY_UNSPECIFIED” “PUBLIC”
facebookSocialLink object | undefined See below
twitterSocialLink object | undefined See below
youtubeSocialLink object | undefined See below
twitchSocialLink object | undefined See below
discordSocialLink object | undefined See below
robloxGroupSocialLink object | undefined See below
guildedSocialLink object | undefined See below
voiceChatEnabled boolean | undefined
ageRating z | undefined
privateServerPriceRobux number | undefined
desktopEnabled boolean | undefined
mobileEnabled boolean | undefined
tabletEnabled boolean | undefined
consoleEnabled boolean | undefined
vrEnabled boolean | undefined
rootPlace string | undefined
templateRootPlace string

facebookSocialLink fields:

Field Type Description
title string
uri string

twitterSocialLink fields:

Field Type Description
title string
uri string

youtubeSocialLink fields:

Field Type Description
title string
uri string

twitchSocialLink fields:

Field Type Description
title string
uri string

discordSocialLink fields:

Field Type Description
title string
uri string

robloxGroupSocialLink fields:

Field Type Description
title string
uri string

guildedSocialLink fields:

Field Type Description
title string
uri string

PATCH /cloud/v2/universes/:universe_id

STABLE Updates the specified universe. This method is guaranteed to return all updated fields. This method may additionally return the full resource. Engine: Not available in-engine

Scopes: universe:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseId, {
universe_id: /* string */,
updateMask: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
updateMask string? No The list of fields to update.

All fields are optional (PATCH partial update)

Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
user string | undefined
group string | undefined
visibility `“VISIBILITY_UNSPECIFIED” “PUBLIC”
facebookSocialLink object | undefined See below
twitterSocialLink object | undefined See below
youtubeSocialLink object | undefined See below
twitchSocialLink object | undefined See below
discordSocialLink object | undefined See below
robloxGroupSocialLink object | undefined See below
guildedSocialLink object | undefined See below
voiceChatEnabled boolean | undefined
ageRating z | undefined
privateServerPriceRobux number | undefined
desktopEnabled boolean | undefined
mobileEnabled boolean | undefined
tabletEnabled boolean | undefined
consoleEnabled boolean | undefined
vrEnabled boolean | undefined
rootPlace string | undefined
templateRootPlace string

facebookSocialLink fields:

Field Type Description
title string
uri string

twitterSocialLink fields:

Field Type Description
title string
uri string

youtubeSocialLink fields:

Field Type Description
title string
uri string

twitchSocialLink fields:

Field Type Description
title string
uri string

discordSocialLink fields:

Field Type Description
title string
uri string

robloxGroupSocialLink fields:

Field Type Description
title string
uri string

guildedSocialLink fields:

Field Type Description
title string
uri string
Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
user string | undefined
group string | undefined
visibility `“VISIBILITY_UNSPECIFIED” “PUBLIC”
facebookSocialLink object | undefined See below
twitterSocialLink object | undefined See below
youtubeSocialLink object | undefined See below
twitchSocialLink object | undefined See below
discordSocialLink object | undefined See below
robloxGroupSocialLink object | undefined See below
guildedSocialLink object | undefined See below
voiceChatEnabled boolean | undefined
ageRating z | undefined
privateServerPriceRobux number | undefined
desktopEnabled boolean | undefined
mobileEnabled boolean | undefined
tabletEnabled boolean | undefined
consoleEnabled boolean | undefined
vrEnabled boolean | undefined
rootPlace string | undefined
templateRootPlace string

facebookSocialLink fields:

Field Type Description
title string
uri string

twitterSocialLink fields:

Field Type Description
title string
uri string

youtubeSocialLink fields:

Field Type Description
title string
uri string

twitchSocialLink fields:

Field Type Description
title string
uri string

discordSocialLink fields:

Field Type Description
title string
uri string

robloxGroupSocialLink fields:

Field Type Description
title string
uri string

guildedSocialLink fields:

Field Type Description
title string
uri string

postCloudV2UniversesUniverseIdGenerateSpeechAsset

Section titled “postCloudV2UniversesUniverseIdGenerateSpeechAsset”

POST /cloud/v2/universes/:universe_id:generateSpeechAsset

BETA Generates an English speech audio asset from the specified text. This endpoint requires the asset:read and asset:write scopes in addition to the universe:write scope. The response returns an Operation object that must be prefixed with /assets/v1. For example, the URL to discover the result of the operation could be https://apis.roblox.com/assets/v1/operations/8b42ef30-9c17-4526-b8cf-2ff0136ca94d. Engine: Not available in-engine

Scopes: universe:write, asset:read, asset:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdGenerateSpeechAsset } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdGenerateSpeechAsset, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
text string
speechStyle object | undefined See below

speechStyle fields:

Field Type Description
voiceId string
pitch number
speed number
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

postCloudV2UniversesUniverseIdPublishMessage

Section titled “postCloudV2UniversesUniverseIdPublishMessage”

POST /cloud/v2/universes/:universe_id:publishMessage

STABLE Publishes a message to the universe’s live servers. Servers can consume messages via MessagingService. Engine: Not available in-engine

Scopes: universe-messaging-service:publish

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdPublishMessage } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdPublishMessage, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
topic string
message string

Type: unknown


postCloudV2UniversesUniverseIdRestartServers

Section titled “postCloudV2UniversesUniverseIdRestartServers”

POST /cloud/v2/universes/:universe_id:restartServers

STABLE Restarts active servers for a specific universe. Defaults to only restarting servers running older versions, but can be configured to restart all servers regardless of version. Used for releasing experience updates. Engine: Not available in-engine

Scopes: universe:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdRestartServers } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdRestartServers, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
placeIds number[]
closeAllVersions boolean
bleedOffServers boolean
bleedOffDurationMinutes number

Type: unknown


postCloudV2UniversesUniverseIdTranslateText

Section titled “postCloudV2UniversesUniverseIdTranslateText”

POST /cloud/v2/universes/:universe_id:translateText

BETA Translates the provided text from one language to another. Engine: Not available in-engine

Scopes: universe:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdTranslateText } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdTranslateText, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
text string
sourceLanguageCode string | undefined
targetLanguageCodes string[] | undefined
Field Type Description
sourceLanguageCode string
translations string

GET /cloud/v2/universes/:universe_id/data-stores

STABLE Returns a list of data stores. Data stores scheduled for permanent deletion are omitted from the results by default (or when showDeleted is set to false). When this is the case, the operation will check up to 512 data stores. If all checked data stores are deleted, it will return an empty list with a page token to continue iteration. Engine: Not available in-engine

Scopes: universe-datastores.control:list

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStores } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStores, {
universe_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */,
showDeleted: /* boolean? */
});
Name Type Required Description
universe_id string Yes The universe ID.
maxPageSize integer? No The maximum number of data stores to return. The service might return fewer than this value. If unspecified, at most 10 data stores are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. The filter field supports a very small subset of CEL: Only the id field is supported. Only the startsWith function is available; no other operators nor built-ins are supported. Example filter: id.startsWith("foo")
showDeleted boolean? No If true, resources marked for pending deletion will be included in the results.
Field Type Description
dataStores object[] See below
nextPageToken string

dataStores[] item fields:

Field Type Description
path string
createTime string
expireTime string
state `“STATE_UNSPECIFIED” “ACTIVE”
id string

postCloudV2UniversesUniverseIdDataStoresSnapshot

Section titled “postCloudV2UniversesUniverseIdDataStoresSnapshot”

POST /cloud/v2/universes/:universe_id/data-stores:snapshot

STABLE Takes a new snapshot of the data stores in an experience. After a snapshot, the next write to every key in the experience will create a versioned backup of the previous data, regardless of the time of the last write. In effect, all data current at the time of the snapshot is guaranteed to be available as a versioned backup for at least 30 days. Snapshots can be taken once per UTC day, per experience. If the latest snapshot was taken within the same UTC day, this operation is a no-op and the time of the latest snapshot will be returned. For more information on using snapshots, see the Data stores Engine guide. Engine: Not available in-engine

Scopes: universe-datastores.control:snapshot

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresSnapshot } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresSnapshot, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.

Type: unknown

Field Type Description
newSnapshotTaken boolean
latestSnapshotTime string

deleteCloudV2UniversesUniverseIdDataStoresDataStoreId

Section titled “deleteCloudV2UniversesUniverseIdDataStoresDataStoreId”

DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id

BETA Schedules the specified data store for permanent deletion. This operation assigns the data store an expiry time 30 days in the future, at which point permanent deletion begins. To cancel, use the UndeleteDataStore operation before the data store’s expiry time. Permanent deletion consists of deleting all of the entries in the data store and then the data store resource itself. The data store is no longer returned by the ListDataStores Open Cloud endpoint or ListDataStoresAsync Luau API, and you can reuse the data store’s name. The duration of the permanent deletion process depends on the number of entries in the data store. However, you can expect a data store with 1 million or fewer entries to be permanently deleted within 3 days. Data stores scheduled for permanent deletion are returned by the ListDataStores Open Cloud endpoint when the query parameter showDeleted is set to true. In the return value, each data store will have a DELETED state and an expireTime field. Data stores scheduled for permanent deletion are immediately made inaccessible, meaning attempts to read or write to their entries will fail. Note: Due to caching in the backend service, attempts to read from or write to entries in these data stores can continue to succeed for a limited time after the deletion: GetDataStoreEntry: can succeed for up to 24 hours. All other endpoints: can succeed for several minutes. If the data store is already in a DELETED state, this operation is a no-op, and the data store is returned as-is. Engine: Not available in-engine

Scopes: universe-datastores.control:delete

Usage
import { fetchApi } from 'rozod';
import { deleteCloudV2UniversesUniverseIdDataStoresDataStoreId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(deleteCloudV2UniversesUniverseIdDataStoresDataStoreId, {
universe_id: /* string */,
data_store_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
Field Type Description
path string
createTime string
expireTime string
state `“STATE_UNSPECIFIED” “ACTIVE”
id string

postCloudV2UniversesUniverseIdDataStoresDataStoreIdUndelete

Section titled “postCloudV2UniversesUniverseIdDataStoresDataStoreIdUndelete”

POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id:undelete

BETA Restore the data store Engine: Not available in-engine

Scopes: universe-datastores.control:delete

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresDataStoreIdUndelete } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresDataStoreIdUndelete, {
universe_id: /* string */,
data_store_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.

Type: unknown

Field Type Description
path string
createTime string
expireTime string
state `“STATE_UNSPECIFIED” “ACTIVE”
id string

getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries

STABLE Returns a list of entries from a data store. Only the path and id fields are populated; use GetDataStoreEntry to retrieve other fields. Specify the wildcard scope (-) to list entries from all scopes. Engine: Not available in-engine

Scopes: universe-datastores.objects:list

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries, {
universe_id: /* string */,
data_store_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */,
showDeleted: /* boolean? */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
maxPageSize integer? No The maximum number of data store entries to return. The service might return fewer than this value. If unspecified, at most 10 data store entries are returned. The maximum value is 256 and higher values are set to 256.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. The filter field supports a very small subset of CEL: Only the id field is supported. Only the startsWith function is available; no other operators nor built-ins are supported. Example filter: id.startsWith("foo")
showDeleted boolean? No If true, resources marked for pending deletion will be included in the results.
Field Type Description
dataStoreEntries DataStoreEntry[]
nextPageToken string

postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries

Section titled “postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries”

POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries

STABLE Creates an entry with the provided ID and value. Returns a 400 Bad Request if the entry exists. Engine: Not available in-engine

Scopes: universe-datastores.objects:create

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntries, {
universe_id: /* string */,
data_store_id: /* string */,
id: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
id string? No The ID to use for the data store entry, which will become the final component of the data store entry’s resource path. This value should be a 1-50 character string. We strongly recommend using only lowercase letters, numeric digits, and hyphens.

Type: DataStoreEntry

Type: DataStoreEntry


getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id

STABLE Gets the specified entry. To get the entry at a specific revision, add @<revisionId> to the end of the path. For example, to get my-entry at the revision ID 08DC3D3F43F9FCC1.0000000001.08DC3D3F43F9FCC1.01, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@08DC3D3F43F9FCC1.0000000001.08DC3D3F43F9FCC1.01. If your entry ID contains one or more @ characters, and you want to get the latest version rather than at any specific revision, append the special revision ID @latest to the end of the path. Otherwise, the segment of the entry ID after the last @ will be interpreted as a revision ID. For example, to get the latest revision of my-entry, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my@entry@latest. To get the entry that was current at a specific time, add @latest:<timestamp> to the end of the path, where <timestamp> is RFC-3339 formatted. The given timestamp must be after the Unix epoch (1/1/1970) and not more than ten minutes in the future. For example, to get the revision of my-entry that was current on 12/2/2024 at 06:00 UTC, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@latest:2024-12-02T06:00:00Z. Engine: Not available in-engine

Scopes: universe-datastores.objects:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
entry_id string Yes The entry ID.

Type: DataStoreEntry


deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId

Section titled “deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId”

DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id

STABLE Marks the specified entry for deletion. Entries are not be deleted immediately; instead, the state field will be set to DELETED. Permanent deletion occurs after 30 days. On success, returns 200 OK. If the entry doesn’t exist, returns 404 Not Found. Engine: Not available in-engine

Scopes: universe-datastores.objects:delete

Usage
import { fetchApi } from 'rozod';
import { deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
entry_id string Yes The entry ID.

Type: unknown


patchCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId

Section titled “patchCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId”

PATCH /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id

STABLE Updates the value, attributes, and users of an entry. Updating specific revisions of the entry is unsupported. If you specify a revision ID in the path and allow_missing is true, the update request will instead create a new entry with the @<revisionId> suffix as part of the key. Partial update is unsupported. If attributes or users are not provided when updating the value, they will be cleared. Value must always be provided when updating an entry. Engine: Not available in-engine

Scopes: universe-datastores.objects:update

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
entry_id: /* string */,
allowMissing: /* boolean? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
entry_id string Yes The entry ID.
allowMissing boolean? No If set to true, and the data store entry is not found, a data store entry is created.

All fields are optional (PATCH partial update)

Type: DataStoreEntry

Type: DataStoreEntry


postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdIncrement

Section titled “postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdIncrement”

POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id:increment

STABLE Increments the value of the specified entry. Both the existing value and the increment amount must be integers. If the entry doesn’t exist, creates an entry with the specified value. Incrementing specific revisions of the entry is unsupported. If you specify a revision ID in the path, the increment request will create a new entry with the @<revisionId> suffix as part of the key. Known issue: the value may be incremented past the valid range of values. When this happens, the returned value will be clamped to the valid range, but the backend may persist the original value. This behavior is maintained for backwards compatibility reasons, but may change in a future version of this API. Engine: Not available in-engine

Scopes: universe-datastores.objects:create, universe-datastores.objects:update

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdIncrement } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdIncrement, {
universe_id: /* string */,
data_store_id: /* string */,
entry_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
entry_id string Yes The entry ID.

Type: IncrementDataStoreEntryRequest

Type: DataStoreEntry


getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdListRevisions

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdListRevisions”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/entries/:entry_id:listRevisions

STABLE List revisions of the data store entry. This method returns partial data store entries. In particular, only the path, id, createTime, revisionCreateTime, revisionId, etag, and state fields are populated. Both the path and id fields will have an @<version> suffix. In order to get the full entry at a revision, you can use the provided path field with the GetDataStoreEntry method, i.e. GET /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@<version>. Engine: Not available in-engine

Scopes: universe-datastores.versions:list

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdListRevisions } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdEntriesEntryIdListRevisions, {
universe_id: /* string */,
data_store_id: /* string */,
entry_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
entry_id string Yes The entry ID.
maxPageSize integer? No The maximum number of revisions to return per page. The service might return fewer than the maximum number of revisions. If unspecified, at most 10 revisions are returned. The maximum value is 100 values and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No Supports the following subset of CEL: Only the &&, <=, and >= operators are supported. Only the revision_create_time field is supported. For example: "revision_create_time >= 2000-01-01T00:00:00Z && revision_create_time <= 2001-01-01T00:00:00Z"
Field Type Description
dataStoreEntries DataStoreEntry[]
nextPageToken string

getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries

STABLE Returns a list of entries from a data store. Only the path and id fields are populated; use GetDataStoreEntry to retrieve other fields. Specify the wildcard scope (-) to list entries from all scopes. Engine: Not available in-engine

Scopes: universe-datastores.objects:list

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */,
showDeleted: /* boolean? */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
maxPageSize integer? No The maximum number of data store entries to return. The service might return fewer than this value. If unspecified, at most 10 data store entries are returned. The maximum value is 256 and higher values are set to 256.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. The filter field supports a very small subset of CEL: Only the id field is supported. Only the startsWith function is available; no other operators nor built-ins are supported. Example filter: id.startsWith("foo")
showDeleted boolean? No If true, resources marked for pending deletion will be included in the results.
Field Type Description
dataStoreEntries DataStoreEntry[]
nextPageToken string

postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries

Section titled “postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries”

POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries

STABLE Creates an entry with the provided ID and value. Returns a 400 Bad Request if the entry exists. Engine: Not available in-engine

Scopes: universe-datastores.objects:create

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntries, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
id: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
id string? No The ID to use for the data store entry, which will become the final component of the data store entry’s resource path. This value should be a 1-50 character string. We strongly recommend using only lowercase letters, numeric digits, and hyphens.

Type: DataStoreEntry

Type: DataStoreEntry


getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Gets the specified entry. To get the entry at a specific revision, add @<revisionId> to the end of the path. For example, to get my-entry at the revision ID 08DC3D3F43F9FCC1.0000000001.08DC3D3F43F9FCC1.01, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@08DC3D3F43F9FCC1.0000000001.08DC3D3F43F9FCC1.01. If your entry ID contains one or more @ characters, and you want to get the latest version rather than at any specific revision, append the special revision ID @latest to the end of the path. Otherwise, the segment of the entry ID after the last @ will be interpreted as a revision ID. For example, to get the latest revision of my-entry, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my@entry@latest. To get the entry that was current at a specific time, add @latest:<timestamp> to the end of the path, where <timestamp> is RFC-3339 formatted. The given timestamp must be after the Unix epoch (1/1/1970) and not more than ten minutes in the future. For example, to get the revision of my-entry that was current on 12/2/2024 at 06:00 UTC, use the path /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@latest:2024-12-02T06:00:00Z. Engine: Not available in-engine

Scopes: universe-datastores.objects:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.

Type: DataStoreEntry


deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId

Section titled “deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId”

DELETE /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Marks the specified entry for deletion. Entries are not be deleted immediately; instead, the state field will be set to DELETED. Permanent deletion occurs after 30 days. On success, returns 200 OK. If the entry doesn’t exist, returns 404 Not Found. Engine: Not available in-engine

Scopes: universe-datastores.objects:delete

Usage
import { fetchApi } from 'rozod';
import { deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(deleteCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.

Type: unknown


patchCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId

Section titled “patchCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId”

PATCH /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Updates the value, attributes, and users of an entry. Updating specific revisions of the entry is unsupported. If you specify a revision ID in the path and allow_missing is true, the update request will instead create a new entry with the @<revisionId> suffix as part of the key. Partial update is unsupported. If attributes or users are not provided when updating the value, they will be cleared. Value must always be provided when updating an entry. Engine: Not available in-engine

Scopes: universe-datastores.objects:update

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */,
allowMissing: /* boolean? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.
allowMissing boolean? No If set to true, and the data store entry is not found, a data store entry is created.

All fields are optional (PATCH partial update)

Type: DataStoreEntry

Type: DataStoreEntry


postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdIncrement

Section titled “postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdIncrement”

POST /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id:increment

STABLE Increments the value of the specified entry. Both the existing value and the increment amount must be integers. If the entry doesn’t exist, creates an entry with the specified value. Incrementing specific revisions of the entry is unsupported. If you specify a revision ID in the path, the increment request will create a new entry with the @<revisionId> suffix as part of the key. Known issue: the value may be incremented past the valid range of values. When this happens, the returned value will be clamped to the valid range, but the backend may persist the original value. This behavior is maintained for backwards compatibility reasons, but may change in a future version of this API. Engine: Not available in-engine

Scopes: universe-datastores.objects:create, universe-datastores.objects:update

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdIncrement } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdIncrement, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.

Type: IncrementDataStoreEntryRequest

Type: DataStoreEntry


getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdListRevisions

Section titled “getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdListRevisions”

GET /cloud/v2/universes/:universe_id/data-stores/:data_store_id/scopes/:scope_id/entries/:entry_id:listRevisions

STABLE List revisions of the data store entry. This method returns partial data store entries. In particular, only the path, id, createTime, revisionCreateTime, revisionId, etag, and state fields are populated. Both the path and id fields will have an @<version> suffix. In order to get the full entry at a revision, you can use the provided path field with the GetDataStoreEntry method, i.e. GET /cloud/v2/universes/1234/data-stores/5678/entries/my-entry@<version>. Engine: Not available in-engine

Scopes: universe-datastores.versions:list

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdListRevisions } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdDataStoresDataStoreIdScopesScopeIdEntriesEntryIdListRevisions, {
universe_id: /* string */,
data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
data_store_id string Yes The data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.
maxPageSize integer? No The maximum number of revisions to return per page. The service might return fewer than the maximum number of revisions. If unspecified, at most 10 revisions are returned. The maximum value is 100 values and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No Supports the following subset of CEL: Only the &&, <=, and >= operators are supported. Only the revision_create_time field is supported. For example: "revision_create_time >= 2000-01-01T00:00:00Z && revision_create_time <= 2001-01-01T00:00:00Z"
Field Type Description
dataStoreEntries DataStoreEntry[]
nextPageToken string

postCloudV2UniversesUniverseIdLuauExecutionSessionTaskBinaryInputs

Section titled “postCloudV2UniversesUniverseIdLuauExecutionSessionTaskBinaryInputs”

POST /cloud/v2/universes/:universe_id/luau-execution-session-task-binary-inputs

STABLE Create a new LuauExecutionSessionTaskBinaryInput. Engine: Not available in-engine

Scopes: universe.place.luau-execution-session:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdLuauExecutionSessionTaskBinaryInputs } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdLuauExecutionSessionTaskBinaryInputs, {
universe_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
Field Type Description
path string
size number
uploadUri string
Field Type Description
path string
size number
uploadUri string

postCloudV2UniversesUniverseIdMemoryStoreFlush

Section titled “postCloudV2UniversesUniverseIdMemoryStoreFlush”

POST /cloud/v2/universes/:universe_id/memory-store:flush

STABLE Asynchronously flush all data structures in the universe. Unlike some other endpoints, the flush response path already includes the cloud/v2 prefix. Poll the operation at https://apis.roblox.com/{path} without adding another prefix. Engine: Not available in-engine

Scopes: memory-store:flush

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdMemoryStoreFlush } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdMemoryStoreFlush, {
universe_id: /* string */,
scope: /* enum */
});
Name Type Required Description
universe_id string Yes The universe ID.
scope enum Yes The scope of the memory store to flush. Possible values: | Value | Description | | — | — | | LIVE | Flush the live memory store scope. This is the default. | | TEST | Flush the test memory store scope. |
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItems

Section titled “postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItems”

POST /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items

STABLE Creates a new queue item. If ttl is set, the item will automatically be removed from the queue after the time interval specified. If a numerical priority is set, the item will be inserted into the queue based on the priority value. The higher the value, the closer to the front of the queue the item will be. If priority values are the same then the item will be inserted after existing values with the same priority. Engine: Not available in-engine

Scopes: memory-store.queue:add

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItems } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItems, {
universe_id: /* string */,
queue_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
queue_id string Yes The queue ID.
Field Type Description
path string
data unknown
priority number
ttl string
expireTime string
id string
Field Type Description
path string
data unknown
priority number
ttl string
expireTime string
id string

postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsDiscard

Section titled “postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsDiscard”

POST /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items:discard

STABLE Discards read items from the front of the queue. Takes a readId from a previous Read operation. Engine: Not available in-engine

Scopes: memory-store.queue:discard

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsDiscard } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsDiscard, {
universe_id: /* string */,
queue_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
queue_id string Yes The queue ID.
Field Type Description
readId string

Type: unknown


getCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsRead

Section titled “getCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsRead”

GET /cloud/v2/universes/:universe_id/memory-store/queues/:queue_id/items:read

STABLE Returns the specified number of items at the front of the queue. Engine: Not available in-engine

Scopes: memory-store.queue:dequeue

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsRead } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdMemoryStoreQueuesQueueIdItemsRead, {
universe_id: /* string */,
queue_id: /* string */,
count: /* integer? */,
allOrNothing: /* boolean? */,
invisibilityWindow: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
queue_id string Yes The queue ID.
count integer? No The number of items to read from the queue If unspecified, 1 item will be returned. The maximum value is 200; values above 200 will be coerced to 200.
allOrNothing boolean? No If all_or_nothing is true and the requested number of objects is not available, will return a 404 Error. Otherwise, will return the path and read_id of the read operation and a list of the MemoryStoreQueue items.
invisibilityWindow string? No Invisibility window for items read, in seconds. Items read are invisible in subsequent reads during the invisibility window duration. It must be written in seconds greater than 0 and end with s. Defaults to 30s.
Field Type Description
readId string
items object[] See below

items[] item fields:

Field Type Description
path string
data unknown
priority number
ttl string
expireTime string
id string

getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems

Section titled “getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems”

GET /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items

STABLE Gets and returns items in the map with a given order and filter. Engine: Not available in-engine

Scopes: memory-store.sorted-map:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems, {
universe_id: /* string */,
sorted_map_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
orderBy: /* string? */,
filter: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
sorted_map_id string Yes The sorted-map ID.
maxPageSize integer? No The maximum number of memory store sorted map items to return. The service might return fewer than this value. If unspecified, at most 1 memory store sorted map items are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
orderBy string? No If specified, results are ordered according to the specified fields. Values must be a comma-separated list of fields, with an optional, per-field “ desc” suffix to sort by descending rather than ascending values. You can access subfields with a . operator. Results may be ordered by the following fields: id. Example: “id desc”
filter string? No This field may be set in order to filter the resources returned. Filtering conforms to Common Expression Language (CEL). Only the id and sortKey fields are supported. In terms of operators, only <, > and && are allowed’ Example: id > "key-001" && id < "key-100"
Field Type Description
items object[] See below
nextPageToken string

items[] item fields:

Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number

postCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems

Section titled “postCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems”

POST /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items

STABLE Creates the specified map item if it doesn’t exist. Engine: Not available in-engine

Scopes: memory-store.sorted-map:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItems, {
universe_id: /* string */,
sorted_map_id: /* string */,
id: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
sorted_map_id string Yes The sorted-map ID.
id string? No The ID to use for the memory store sorted map item, which will become the final component of the memory store sorted map item’s resource path. This value should be a 1-127 character string that supports alphanumeric and special characters. This id is case sensitive. The id must be url encoded if it contains any url breaking special characters.
Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number
Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number

getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId

Section titled “getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId”

GET /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id

STABLE Gets and returns the value of the given key in the map. Engine: Not available in-engine

Scopes: memory-store.sorted-map:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId, {
universe_id: /* string */,
sorted_map_id: /* string */,
item_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
sorted_map_id string Yes The sorted-map ID.
item_id string Yes The item ID.
Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number

deleteCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId

Section titled “deleteCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId”

DELETE /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id

STABLE Deletes the specified item from the map. Engine: Not available in-engine

Scopes: memory-store.sorted-map:write

Usage
import { fetchApi } from 'rozod';
import { deleteCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(deleteCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId, {
universe_id: /* string */,
sorted_map_id: /* string */,
item_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
sorted_map_id string Yes The sorted-map ID.
item_id string Yes The item ID.

Type: unknown


patchCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId

Section titled “patchCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId”

PATCH /cloud/v2/universes/:universe_id/memory-store/sorted-maps/:sorted_map_id/items/:item_id

STABLE Updates the specified map item. Engine: Not available in-engine

Scopes: memory-store.sorted-map:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdMemoryStoreSortedMapsSortedMapIdItemsItemId, {
universe_id: /* string */,
sorted_map_id: /* string */,
item_id: /* string */,
allowMissing: /* boolean? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
sorted_map_id string Yes The sorted-map ID.
item_id string Yes The item ID.
allowMissing boolean? No If set to true, and the memory store sorted map item is not found, a memory store sorted map item is created.

All fields are optional (PATCH partial update)

Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number
Field Type Description
path string
value unknown
etag string
ttl string
expireTime string
id string
stringSortKey string
numericSortKey number

getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries

Section titled “getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries”

GET /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries

STABLE Returns a list of entries from an ordered data store. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
orderBy: /* string? */,
filter: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
maxPageSize integer? No The maximum number of ordered data store entries to return. The service might return fewer than this value. If unspecified, at most 10 ordered data store entries are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
orderBy string? No If specified, results are ordered according to the specified fields. Values must be a comma-separated list of fields, with an optional, per-field “ desc” suffix to sort by descending rather than ascending values. You can access subfields with a . operator. Results may be ordered by the following fields: value. Example: “value desc”
filter string? No This field may be set in order to filter the resources returned. We support two comparison operators for this operation: <= and >=.These comparison operators act as a minValue and maxValue for the values returned. If filtering is needed for a value between a minValue and maxValue the user can use the logical operator &&. All tokens in the filter expression must be separated by a single space. Example filters: entry <= 10; entry >= 10 && entry <= 30
Field Type Description
orderedDataStoreEntries object[] See below
nextPageToken string

orderedDataStoreEntries[] item fields:

Field Type Description
path string
value number
id string

postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries

Section titled “postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries”

POST /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries

STABLE Creates an entry with the provided ID and value. Returns a 400 Bad Request if the entry exists. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntries, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
id: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
id string? No The ID to use for the ordered data store entry, which will become the final component of the ordered data store entry’s resource path. This value should be A 1-63 character string. We strongly recommend using only lowercase letters, numeric digits, and hyphens.
Field Type Description
path string
value number
id string
Field Type Description
path string
value number
id string

getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId

Section titled “getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId”

GET /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Gets the specified entry. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.
Field Type Description
path string
value number
id string

deleteCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId

Section titled “deleteCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId”

DELETE /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Deletes the specified entry. On success, returns 200 OK. If the entry doesn’t exist, returns 404 Not Found. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:write

Usage
import { fetchApi } from 'rozod';
import { deleteCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(deleteCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.

Type: unknown


patchCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId

Section titled “patchCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId”

PATCH /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id

STABLE Updates the value of an entry. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryId, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */,
allowMissing: /* boolean? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.
allowMissing boolean? No If set to true, and the ordered data store entry is not found, a ordered data store entry is created.

All fields are optional (PATCH partial update)

Field Type Description
path string
value number
id string
Field Type Description
path string
value number
id string

postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryIdIncrement

Section titled “postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryIdIncrement”

POST /cloud/v2/universes/:universe_id/ordered-data-stores/:ordered_data_store_id/scopes/:scope_id/entries/:entry_id:increment

STABLE Increments the value of the specified entry. Both the existing value and the increment amount must be integers. If the entry doesn’t exist, creates an entry with the specified value. Known issue: the value may be incremented past the valid range of values. When this happens, the returned value will be clamped to the valid range, but the backend may persist the original value. This behavior is maintained for backwards compatibility reasons, but may change in a future version of this API. Engine: Not available in-engine

Scopes: universe.ordered-data-store.scope.entry:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryIdIncrement } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdOrderedDataStoresOrderedDataStoreIdScopesScopeIdEntriesEntryIdIncrement, {
universe_id: /* string */,
ordered_data_store_id: /* string */,
scope_id: /* string */,
entry_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
ordered_data_store_id string Yes The ordered-data-store ID.
scope_id string Yes The scope ID.
entry_id string Yes The entry ID.
Field Type Description
amount number
Field Type Description
path string
value number
id string

getCloudV2UniversesUniverseIdPlacesPlaceId

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceId”

GET /cloud/v2/universes/:universe_id/places/:place_id

STABLE Gets the specified place. Engine: Not available in-engine

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceId, {
universe_id: /* string */,
place_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
serverSize number | undefined
root boolean | undefined
universeRuntimeCreation boolean | undefined
templatePlace string

patchCloudV2UniversesUniverseIdPlacesPlaceId

Section titled “patchCloudV2UniversesUniverseIdPlacesPlaceId”

PATCH /cloud/v2/universes/:universe_id/places/:place_id

STABLE Updates the specified place. To avoid overwriting changes, this endpoint responds with an HTTP 409 Conflict error if the place is open in an active Team Create session. Engine: Not available in-engine

Scopes: universe.place:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdPlacesPlaceId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdPlacesPlaceId, {
universe_id: /* string */,
place_id: /* string */,
updateMask: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
updateMask string? No The list of fields to update.

All fields are optional (PATCH partial update)

Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
serverSize number | undefined
root boolean | undefined
universeRuntimeCreation boolean | undefined
templatePlace string
Field Type Description
path string | undefined
createTime string | undefined
updateTime string | undefined
displayName string | undefined
description string | undefined
serverSize number | undefined
root boolean | undefined
universeRuntimeCreation boolean | undefined
templatePlace string

getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId”

GET /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id

BETA Gets an instance and its property data. The maximum supported response data size is 500,000 bytes. If this limit is exceeded, the returned Operation will be completed with an error result that has an error code of 422. Engine: Not available in-engine

Scopes: universe.place.instance:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId, {
universe_id: /* string */,
place_id: /* string */,
instance_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
instance_id string Yes The instance ID.
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

patchCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId

Section titled “patchCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId”

PATCH /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id

BETA Updates an instance’s property data. When updating a Script instance’s source property, the maximum supported property size is 200,000 bytes after UTF-8 encoding. Engine: Not available in-engine

Scopes: universe.place.instance:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceId, {
universe_id: /* string */,
place_id: /* string */,
instance_id: /* string */,
updateMask: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
instance_id string Yes The instance ID.
updateMask string? No The list of fields to update.

All fields are optional (PATCH partial update)

Field Type Description
path string
hasChildren boolean
engineInstance object See below

engineInstance fields:

Field Type Description
Id string
Parent string
Name string
Details object See below

Details fields:

Field Type Description
Folder object See below
LocalScript object See below
ModuleScript object See below
Script object See below

LocalScript fields:

Field Type Description
Enabled boolean
RunContext `“Legacy” “Server”
Source string

ModuleScript fields:

Field Type Description
Source string

Script fields:

Field Type Description
Enabled boolean
RunContext `“Legacy” “Server”
Source string
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceIdListChildren

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceIdListChildren”

GET /cloud/v2/universes/:universe_id/places/:place_id/instances/:instance_id:listChildren

BETA Lists an instance’s children. The maximum supported response data size is 500,000 bytes. If this limit is exceeded, the returned Operation will be completed with an error result that has an error code of 422. Engine: Not available in-engine

Scopes: universe.place.instance:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceIdListChildren } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdInstancesInstanceIdListChildren, {
universe_id: /* string */,
place_id: /* string */,
instance_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
instance_id string Yes The instance ID.
maxPageSize integer? No The maximum number of child instance to return. The service may return fewer than this value. If unspecified, at most 200 children will be returned. The maximum value is 200; values above 200 will be coerced to 200.
pageToken string? No A page token, received from a previous ListInstanceChildrenRequest call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListInstanceChildrenRequest must match the call that provided the page token.
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

postCloudV2UniversesUniverseIdPlacesPlaceIdLuauExecutionSessionTasks

Section titled “postCloudV2UniversesUniverseIdPlacesPlaceIdLuauExecutionSessionTasks”

POST /cloud/v2/universes/:universe_id/places/:place_id/luau-execution-session-tasks

STABLE Creates a task but does not wait for the task to complete. To check whether a task has completed, call the GetLuauExecutionSessionTask method and inspect the state field of the returned resource. Engine: Not available in-engine

Scopes: universe.place.luau-execution-session:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdPlacesPlaceIdLuauExecutionSessionTasks } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdPlacesPlaceIdLuauExecutionSessionTasks, {
universe_id: /* string */,
place_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
Field Type Description
path string
createTime string
updateTime string
user string
state `“STATE_UNSPECIFIED” “QUEUED”
script string
timeout string
error object See below
output object See below
binaryInput string
enableBinaryOutput boolean
binaryOutputUri string

error fields:

Field Type Description
code `“ERROR_CODE_UNSPECIFIED” “SCRIPT_ERROR”
message string

output fields:

Field Type Description
results unknown[]
Field Type Description
path string
createTime string
updateTime string
user string
state `“STATE_UNSPECIFIED” “QUEUED”
script string
timeout string
error object See below
output object See below
binaryInput string
enableBinaryOutput boolean
binaryOutputUri string

error fields:

Field Type Description
code `“ERROR_CODE_UNSPECIFIED” “SCRIPT_ERROR”
message string

output fields:

Field Type Description
results unknown[]

getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictions

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictions”

GET /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions

BETA List user restrictions for users that have ever been banned in either a universe or a specific place. Engine: Not available in-engine

Scopes: universe.user-restriction:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictions } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictions, {
universe_id: /* string */,
place_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
maxPageSize integer? No The maximum number of user restrictions to return. The service might return fewer than this value. If unspecified, at most 10 user restrictions are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
Field Type Description
userRestrictions object[] See below
nextPageToken string

userRestrictions[] item fields:

Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId”

GET /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions/:user_restriction_id

BETA Get the user restriction. Engine: Not available in-engine

Scopes: universe.user-restriction:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId, {
universe_id: /* string */,
place_id: /* string */,
user_restriction_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
user_restriction_id string Yes The user-restriction ID.
Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

patchCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId

Section titled “patchCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId”

PATCH /cloud/v2/universes/:universe_id/places/:place_id/user-restrictions/:user_restriction_id

BETA Update the user restriction. Engine: Not available in-engine

Scopes: universe.user-restriction:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdPlacesPlaceIdUserRestrictionsUserRestrictionId, {
universe_id: /* string */,
place_id: /* string */,
user_restriction_id: /* string */,
updateMask: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
user_restriction_id string Yes The user-restriction ID.
updateMask string? No The list of fields to update. The game_join_restriction field must be updated atomically; field masks that index into game_join_restriction (such as "game_join_restriction.active") are not supported.

All fields are optional (PATCH partial update)

Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean
Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

postCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionTasks

Section titled “postCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionTasks”

POST /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-session-tasks

STABLE Creates a task but does not wait for the task to complete. To check whether a task has completed, call the GetLuauExecutionSessionTask method and inspect the state field of the returned resource. Engine: Not available in-engine

Scopes: universe.place.luau-execution-session:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionTasks } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionTasks, {
universe_id: /* string */,
place_id: /* string */,
version_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
version_id string Yes The version ID.
Field Type Description
path string
createTime string
updateTime string
user string
state `“STATE_UNSPECIFIED” “QUEUED”
script string
timeout string
error object See below
output object See below
binaryInput string
enableBinaryOutput boolean
binaryOutputUri string

error fields:

Field Type Description
code `“ERROR_CODE_UNSPECIFIED” “SCRIPT_ERROR”
message string

output fields:

Field Type Description
results unknown[]
Field Type Description
path string
createTime string
updateTime string
user string
state `“STATE_UNSPECIFIED” “QUEUED”
script string
timeout string
error object See below
output object See below
binaryInput string
enableBinaryOutput boolean
binaryOutputUri string

error fields:

Field Type Description
code `“ERROR_CODE_UNSPECIFIED” “SCRIPT_ERROR”
message string

output fields:

Field Type Description
results unknown[]

getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskId

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskId”

GET /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-sessions/:luau_execution_session_id/tasks/:task_id

STABLE Gets information about a task. Engine: Not available in-engine

Scopes: universe.place.luau-execution-session:read, universe.place.luau-execution-session:write

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskId, {
universe_id: /* string */,
place_id: /* string */,
version_id: /* string */,
luau_execution_session_id: /* string */,
task_id: /* string */,
view: /* enum */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
version_id string Yes The version ID.
luau_execution_session_id string Yes The luau-execution-session ID.
task_id string Yes The task ID.
view enum Yes The view in which to retrieve the luau execution session task. Supports BASIC and FULL. Defaults to BASIC. Possible values: | Value | Description | | — | — | | VIEW_UNSPECIFIED | The luau execution session task view is not specified; the default will be used. | | BASIC | Excludes the script field. | | FULL | Includes all fields. |
Field Type Description
path string
createTime string
updateTime string
user string
state `“STATE_UNSPECIFIED” “QUEUED”
script string
timeout string
error object See below
output object See below
binaryInput string
enableBinaryOutput boolean
binaryOutputUri string

error fields:

Field Type Description
code `“ERROR_CODE_UNSPECIFIED” “SCRIPT_ERROR”
message string

output fields:

Field Type Description
results unknown[]

getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskIdLogs

Section titled “getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskIdLogs”

GET /cloud/v2/universes/:universe_id/places/:place_id/versions/:version_id/luau-execution-sessions/:luau_execution_session_id/tasks/:task_id/logs

STABLE Lists log chunks generated by a LuauExecutionSessionTask. Engine: Not available in-engine

Scopes: universe.place.luau-execution-session:read, universe.place.luau-execution-session:write

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskIdLogs } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdPlacesPlaceIdVersionsVersionIdLuauExecutionSessionsLuauExecutionSessionIdTasksTaskIdLogs, {
universe_id: /* string */,
place_id: /* string */,
version_id: /* string */,
luau_execution_session_id: /* string */,
task_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
view: /* enum */
});
Name Type Required Description
universe_id string Yes The universe ID.
place_id string Yes The place ID.
version_id string Yes The version ID.
luau_execution_session_id string Yes The luau-execution-session ID.
task_id string Yes The task ID.
maxPageSize integer? No The maximum number of luau execution session task logs to return. The service might return fewer than this value. If unspecified, at most 10000 luau execution session task logs are returned. The maximum value is 10000 and higher values are set to 10000.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
view enum Yes The view in which to retrieve the luau execution session task log. Supports FLAT and STRUCTURED. Defaults to FLAT. Possible values: | Value | Description | | — | — | | VIEW_UNSPECIFIED | The luau execution session task log view is not specified; the default will be used. | | FLAT | If this view is selected, the messages field will be populated (and the structuredMessages field will not). Each entry of the messages array contains only the log message, without additional medata. This is the default. | | STRUCTURED | If this view is selected, the structuredMessages field will be populated (and the messages field will not). Each entry of the structuredMessages array contains the log message plus additional metadata (see LogMessage for details). |
Field Type Description
luauExecutionSessionTaskLogs object[] See below
nextPageToken string

luauExecutionSessionTaskLogs[] item fields:

Field Type Description
path string
messages string[]
structuredMessages object[] See below

structuredMessages[] item fields:

Field Type Description
message string
createTime string
messageType `“MESSAGE_TYPE_UNSPECIFIED” “OUTPUT”

getCloudV2UniversesUniverseIdSubscriptionProductsSubscriptionProductIdSubscriptionsSubscriptionId

Section titled “getCloudV2UniversesUniverseIdSubscriptionProductsSubscriptionProductIdSubscriptionsSubscriptionId”

GET /cloud/v2/universes/:universe_id/subscription-products/:subscription_product_id/subscriptions/:subscription_id

BETA Get the subscription. The universe.subscription-product.subscription:read scope only allows reading subscriptions of the user making the request. Because of this, the subscription ID must match the user ID of the user making the request. Note that this scope might be more relevant for OAuth 2.0 apps. To read all subscriptions made by users for a particular universe, use the universe:write scope instead. Engine: Not available in-engine

Scopes: universe:write, universe.subscription-product.subscription:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdSubscriptionProductsSubscriptionProductIdSubscriptionsSubscriptionId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdSubscriptionProductsSubscriptionProductIdSubscriptionsSubscriptionId, {
universe_id: /* string */,
subscription_product_id: /* string */,
subscription_id: /* string */,
view: /* enum */
});
Name Type Required Description
universe_id string Yes The universe ID.
subscription_product_id string Yes The subscription-product ID.
subscription_id string Yes The subscription ID.
view enum Yes The view in which to retrieve the subscription. Supports BASIC and FULL. Defaults to BASIC. Possible values: | Value | Description | | — | — | | VIEW_UNSPECIFIED | The subscription view is not specified; the default will be used. | | BASIC | Includes only the active and renewing fields. | | FULL | Includes all fields. |
Field Type Description
path string
createTime string
updateTime string
active boolean
willRenew boolean
lastBillingTime string
nextRenewTime string
expireTime string
state `“STATE_UNSPECIFIED” “SUBSCRIBED_WILL_RENEW”
expirationDetails object See below
purchasePlatform `“PURCHASE_PLATFORM_UNSPECIFIED” “DESKTOP”
paymentProvider `“PAYMENT_PROVIDER_UNSPECIFIED” “STRIPE”
user string

expirationDetails fields:

Field Type Description
reason `“EXPIRATION_REASON_UNSPECIFIED” “PRODUCT_INACTIVE”

getCloudV2UniversesUniverseIdUserRestrictions

Section titled “getCloudV2UniversesUniverseIdUserRestrictions”

GET /cloud/v2/universes/:universe_id/user-restrictions

BETA List user restrictions for users that have ever been banned in either a universe or a specific place. Engine: Not available in-engine

Scopes: universe.user-restriction:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdUserRestrictions } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdUserRestrictions, {
universe_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
maxPageSize integer? No The maximum number of user restrictions to return. The service might return fewer than this value. If unspecified, at most 10 user restrictions are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
Field Type Description
userRestrictions object[] See below
nextPageToken string

userRestrictions[] item fields:

Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

getCloudV2UniversesUniverseIdUserRestrictionsListLogs

Section titled “getCloudV2UniversesUniverseIdUserRestrictionsListLogs”

GET /cloud/v2/universes/:universe_id/user-restrictions:listLogs

BETA List changes to UserRestriction resources within a given universe. This includes both universe-level and place-level restrictions. For universe-level restriction logs, the place field will be empty. Engine: Not available in-engine

Scopes: universe.user-restriction:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdUserRestrictionsListLogs } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdUserRestrictionsListLogs, {
universe_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
universe_id string Yes The universe ID.
maxPageSize integer? No The maximum number of UserRestrictionLogs to return. The service may return fewer than this value. If unspecified, at most 10 UserRestrictionLogs are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set to filter the logs returned. The filter field supports a very small number of CEL: user place The == comparison operator is available. The && logical operator is also supported. As an example, filtering for a user and a place takes the form filter="user == 'users/123'" && "place == 'places/456'"
Field Type Description
logs object[] See below
nextPageToken string

logs[] item fields:

Field Type Description
user string
place string
moderator object See below
createTime string
active boolean
startTime string
duration string
privateReason string
displayReason string
restrictionType object See below
excludeAltAccounts boolean

moderator fields:

Field Type Description
robloxUser string
gameServerScript object See below

restrictionType fields:

Field Type Description
gameJoinRestriction object See below

getCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId

Section titled “getCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId”

GET /cloud/v2/universes/:universe_id/user-restrictions/:user_restriction_id

BETA Get the user restriction. Engine: Not available in-engine

Scopes: universe.user-restriction:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId, {
universe_id: /* string */,
user_restriction_id: /* string */
});
Name Type Required Description
universe_id string Yes The universe ID.
user_restriction_id string Yes The user-restriction ID.
Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

patchCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId

Section titled “patchCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId”

PATCH /cloud/v2/universes/:universe_id/user-restrictions/:user_restriction_id

BETA Update the user restriction. Engine: Not available in-engine

Scopes: universe.user-restriction:write

Usage
import { fetchApi } from 'rozod';
import { patchCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(patchCloudV2UniversesUniverseIdUserRestrictionsUserRestrictionId, {
universe_id: /* string */,
user_restriction_id: /* string */,
updateMask: /* string? */,
body: { /* ... */ }
});
Name Type Required Description
universe_id string Yes The universe ID.
user_restriction_id string Yes The user-restriction ID.
updateMask string? No The list of fields to update. The game_join_restriction field must be updated atomically; field masks that index into game_join_restriction (such as "game_join_restriction.active") are not supported.

All fields are optional (PATCH partial update)

Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean
Field Type Description
path string
updateTime string
user string
gameJoinRestriction object See below

gameJoinRestriction fields:

Field Type Description
active boolean
startTime string
duration string
privateReason string
displayReason string
excludeAltAccounts boolean
inherited boolean

GET /cloud/v2/users/:user_id/asset-quotas

BETA Returns a list of asset quotas. Engine: Not available in-engine

Scopes: asset:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UsersUserIdAssetQuotas } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UsersUserIdAssetQuotas, {
user_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
user_id string Yes The user ID.
maxPageSize integer? No The maximum number of asset quotas to return. The service might return fewer than this value. If unspecified, at most 10 asset quotas are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. Supports the following subset of CEL: Only the quotaType and assetType fields are supported. Only the == and && operator are supported. For example: quotaType == RateLimitUpload && assetType == Audio
Field Type Description
assetQuotas object[] See below
nextPageToken string

assetQuotas[] item fields:

Field Type Description
path string
quotaType `“QUOTA_TYPE_UNSPECIFIED” “RATE_LIMIT_UPLOAD”
assetType `“ASSET_TYPE_UNSPECIFIED” “IMAGE”
usage number
capacity number
period `“PERIOD_UNSPECIFIED” “MONTH”
usageResetTime string

POST /cloud/v2/users/:user_id/notifications

STABLE Sends a notification to a user. Engine: Not available in-engine

Scopes: user.user-notification:write

Usage
import { fetchApi } from 'rozod';
import { postCloudV2UsersUserIdNotifications } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(postCloudV2UsersUserIdNotifications, {
user_id: /* string */,
body: { /* ... */ }
});
Name Type Required Description
user_id string Yes The user ID.
Field Type Description
path string
id string
source object See below
payload object See below

source fields:

Field Type Description
universe string

payload fields:

Field Type Description
type `“TYPE_UNSPECIFIED” “MOMENT”`
messageId string
parameters object See below
joinExperience object See below
analyticsData object See below

parameters fields:

Field Type Description
stringValue string
int64Value number

joinExperience fields:

Field Type Description
launchData string

analyticsData fields:

Field Type Description
category string
Field Type Description
path string
id string
source object See below
payload object See below

source fields:

Field Type Description
universe string

payload fields:

Field Type Description
type `“TYPE_UNSPECIFIED” “MOMENT”`
messageId string
parameters object See below
joinExperience object See below
analyticsData object See below

parameters fields:

Field Type Description
stringValue string
int64Value number

joinExperience fields:

Field Type Description
launchData string

analyticsData fields:

Field Type Description
category string

GET /cloud/v2/users/:user_id

STABLE Gets a user’s basic and advanced information. To access a user’s public information, no additional scopes are required. To access a user’s verification status, you need the following scopes: user.advanced:read To access a user’s social account information, you need the following scopes: user.social:read Engine: Usable with HttpService

Scopes: user.advanced:read, user.social:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UsersUserId } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UsersUserId, {
user_id: /* string */
});
Name Type Required Description
user_id string Yes The user ID.
Field Type Description
path string
createTime string
id string
name string
displayName string
about string
locale string
premium boolean
idVerified boolean
socialNetworkProfiles object See below

socialNetworkProfiles fields:

Field Type Description
facebook string
twitter string
youtube string
twitch string
guilded string
visibility `“SOCIAL_NETWORK_VISIBILITY_UNSPECIFIED” “NO_ONE”

GET /cloud/v2/users/:user_id:generateThumbnail

STABLE Generates and returns the URL for the user’s avatar thumbnail. Engine: Usable with HttpService

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UsersUserIdGenerateThumbnail } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UsersUserIdGenerateThumbnail, {
user_id: /* string */,
size: /* integer? */,
format: /* enum */,
shape: /* enum */
});
Name Type Required Description
user_id string Yes The user ID.
size integer? No Size of the generated thumbnail. The generated thumbnail will have size size dimension. Currently supported values: 48, 50, 60, 75, 100, 110, 150, 180, 352, 420, 720 Default is 420.
format enum Yes Specify the format of the generated thumbnail. Default is PNG. Possible values: | Value | Description | | — | — | | FORMAT_UNSPECIFIED | Default UserThumbnail Format – set to png | | PNG | Generate thumbnail in .png format | | JPEG | Generate thumbnail in .jpg format |
shape enum Yes Specify the shape of the thumbnail. Default is ROUND (circular). Possible values: | Value | Description | | — | — | | SHAPE_UNSPECIFIED | Default UserThumbnail Shape – set to round | | ROUND | Generate thumbnail as a circle. | | SQUARE | Generate thumbnail as a rectangle. |
Field Type Description
path string
metadata object See below
done boolean
error object See below
response object See below

error fields:

Field Type Description
code number
message string
details unknown[]

GET /cloud/v2/users/:user_id/inventory-items

BETA List the inventory items in a user’s inventory. The inventory items returned depend on the target user’s choice under *Settings > Privacy > Who can see my inventory?**: If the user granted inventory visibility to “Everyone,” then any API key or OAuth2 token can be used to view the target’s inventory, no matter what scopes it has or who created it. If the user has not granted inventory visibility to “Everyone”: Their inventory can still be viewed with an API key created by the target user with Inventory: Read permission. Their inventory can still be viewed with an OAuth2 token if the target user authorizes an app requesting permissions for the user.inventory-item:read scope. Engine: Usable with HttpService

Scopes: user.inventory-item:read

Usage
import { fetchApi } from 'rozod';
import { getCloudV2UsersUserIdInventoryItems } from 'rozod/opencloud/v2/cloud';
const data = await fetchApi(getCloudV2UsersUserIdInventoryItems, {
user_id: /* string */,
maxPageSize: /* integer? */,
pageToken: /* string? */,
filter: /* string? */
});
Name Type Required Description
user_id string Yes The user ID.
maxPageSize integer? No The maximum number of inventory items to return. The service might return fewer than this value. If unspecified, at most 10 inventory items are returned. The maximum value is 100 and higher values are set to 100.
pageToken string? No A page token, received from a previous call, to retrieve a subsequent page. When paginating, all other parameters provided to the subsequent call must match the call that provided the page token.
filter string? No This field may be set in order to filter the resources returned. See the filtering documentation for more information.
Field Type Description
inventoryItems object[] See below
nextPageToken string

inventoryItems[] item fields:

Field Type Description
path string
assetDetails object See below
badgeDetails object See below
gamePassDetails object See below
privateServerDetails object See below
addTime string

assetDetails fields:

Field Type Description
assetId string
inventoryItemAssetType `“INVENTORY_ITEM_ASSET_TYPE_UNSPECIFIED” “CLASSIC_TSHIRT”
instanceId string
collectibleDetails object See below

collectibleDetails fields:

Field Type Description
itemId string
instanceId string
instanceState `“COLLECTIBLE_ITEM_INSTANCE_STATE_UNSPECIFIED” “AVAILABLE”
serialNumber number

badgeDetails fields:

Field Type Description
badgeId string

gamePassDetails fields:

Field Type Description
gamePassId string

privateServerDetails fields:

Field Type Description
privateServerId string