Skip to content

Asset Delivery v1

Reference for the Asset Delivery v1 endpoints on Roblox.

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

Method Path Name
GET /v1/alias/:alias getAliasAlias
GET /v1/asset getAsset
GET /v1/assetId/:assetId getAssetidAssetid
GET /v1/assetId/:assetId/version/:versionNumber getAssetidAssetidVersionVersionnumber
POST /v1/assets/batch postAssetsBatch
GET /v1/marAssetHash/:marAssetHash/marCheckSum/:marCheckSum getMarassethashMarassethashMarchecksumMarchecksum
GET /v1/openCloud/assetId/:assetId getOpencloudAssetidAssetid
GET /v1/openCloud/assetId/:assetId/version/:versionNumber getOpencloudAssetidAssetidVersionVersionnumber

GET /v1/alias/:alias

Retrieves an asset by its alias (universeID/name)

Usage
import { fetchApi } from 'rozod';
import { getAliasAlias } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getAliasAlias, {
alias: /* string */,
AssetType: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
alias string Yes The alias of the asset to retrieve.
AssetType string Yes
AssetFormat string Yes
skipSigningScripts boolean? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid integer? No
expectedAssetType string? No
accessContext string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string

GET /v1/asset

Usage
import { fetchApi } from 'rozod';
import { getAsset } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getAsset, {
AssetType: /* string */,
AssetFormat: /* string */,
id: /* integer? */,
userAssetId: /* integer? */,
assetVersionId: /* integer? */,
version: /* integer? */,
universeId: /* integer? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* string? */,
assetName: /* string? */,
hash: /* string? */,
marAssetHash: /* string? */,
marCheckSum: /* string? */,
expectedAssetType: /* string? */,
skipSigningScripts: /* boolean? */,
permissionContext: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
assetResolutionMode: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
AssetType string Yes
AssetFormat string Yes
id integer? No
userAssetId integer? No
assetVersionId integer? No
version integer? No
universeId integer? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid string? No
assetName string? No
hash string? No
marAssetHash string? No
marCheckSum string? No
expectedAssetType string? No
skipSigningScripts boolean? No
permissionContext string? No
doNotFallbackToBaselineRepresentation boolean? No
contentRepresentationPriorityList string? No
assetResolutionMode string? No
accessContext string? No

Type: unknown


GET /v1/assetId/:assetId

Retrieves an asset by its ID

Usage
import { fetchApi } from 'rozod';
import { getAssetidAssetid } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getAssetidAssetid, {
assetId: /* integer */,
AssetType: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
assetId integer Yes The ID of the asset to retrieve.
AssetType string Yes
AssetFormat string Yes
skipSigningScripts boolean? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid integer? No
expectedAssetType string? No
doNotFallbackToBaselineRepresentation boolean? No
contentRepresentationPriorityList string? No
accessContext string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string

GET /v1/assetId/:assetId/version/:versionNumber

Retrieves an asset by its ID and version number.

Usage
import { fetchApi } from 'rozod';
import { getAssetidAssetidVersionVersionnumber } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getAssetidAssetidVersionVersionnumber, {
assetId: /* integer */,
versionNumber: /* integer */,
AssetType: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
assetId integer Yes The ID of the asset to retrieve.
versionNumber integer Yes The version of the asset to retrieve.
AssetType string Yes
AssetFormat string Yes
skipSigningScripts boolean? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid integer? No
expectedAssetType string? No
doNotFallbackToBaselineRepresentation boolean? No
contentRepresentationPriorityList string? No
accessContext string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string

POST /v1/assets/batch

Usage
import { fetchApi } from 'rozod';
import { postAssetsBatch } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(postAssetsBatch, {
body: { /* ... */ }
});

Array of objects:

Field Type Description
assetName string
assetType string
clientInsert boolean
placeId number
requestId string
scriptInsert boolean
serverPlaceId number
universeId number
accept string
encoding string
hash string
userAssetId number
assetId number
version number
assetVersionId number
modulePlaceId number
assetFormat string
assetResolutionMode string
accessContext string
usageContext string
contentRepresentationPriorityList string
doNotFallbackToBaselineRepresentation boolean
xcachesplit number

Array of objects:

Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string

getMarassethashMarassethashMarchecksumMarchecksum

Section titled “getMarassethashMarassethashMarchecksumMarchecksum”

GET /v1/marAssetHash/:marAssetHash/marCheckSum/:marCheckSum

Retrieves an asset by its mar (moderation agnostic) hash and mar (moderation agnostic) checksum.

Usage
import { fetchApi } from 'rozod';
import { getMarassethashMarassethashMarchecksumMarchecksum } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getMarassethashMarassethashMarchecksumMarchecksum, {
marAssetHash: /* string */,
marCheckSum: /* string */,
AssetType: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */
});
Name Type Required Description
marAssetHash string Yes The mar (moderation agnostic) hash of the asset to retrieve.
marCheckSum string Yes The mar (moderation agnostic) checksum of the asset to retrieve.
AssetType string Yes
AssetFormat string Yes
skipSigningScripts boolean? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid integer? No
expectedAssetType string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string
Status Description
400 2: invalid server request
3: Encoding cannot be empty
404 5: Asset hash cannot be empty

GET /v1/openCloud/assetId/:assetId

Retrieves an asset by its ID with OpenCloud auth.

Usage
import { fetchApi } from 'rozod';
import { getOpencloudAssetidAssetid } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getOpencloudAssetidAssetid, {
assetId: /* integer */,
AssetType: /* string? */,
AssetFormat: /* string? */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
assetId integer Yes The ID of the asset to retrieve.
AssetType string? No The AssetType header value specifying the expected asset type.
AssetFormat string? No The AssetFormat header value specifying the desired asset format. Overridden by robloxAssetFormat if both are provided.
skipSigningScripts boolean? No Whether to skip script signing for the returned asset. Used for script assets that don’t require signing.
clientInsert integer? No Set to 1 to indicate this is a client insert request.
scriptinsert integer? No Set to 1 to indicate this is a script insert request.
modulePlaceId integer? No The place ID of the module making the request.
serverplaceid integer? No The server place ID making the request.
expectedAssetType string? No The expected asset type as a fallback when assetType header is not provided.
doNotFallbackToBaselineRepresentation boolean? No Whether to prevent fallback to baseline representation when specific content representations are not available.
contentRepresentationPriorityList string? No Base64URL-encoded JSON string specifying the priority list of desired content representations (format, version, fidelity).
accessContext string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string
Status Description
401 0: Authorization has been denied for this request.

getOpencloudAssetidAssetidVersionVersionnumber

Section titled “getOpencloudAssetidAssetidVersionVersionnumber”

GET /v1/openCloud/assetId/:assetId/version/:versionNumber

Retrieves an asset by its ID and version number with OpenCloud auth.

Usage
import { fetchApi } from 'rozod';
import { getOpencloudAssetidAssetidVersionVersionnumber } from 'rozod/endpoints/assetdeliveryv1';
const data = await fetchApi(getOpencloudAssetidAssetidVersionVersionnumber, {
assetId: /* integer */,
versionNumber: /* integer */,
AssetType: /* string? */,
AssetFormat: /* string? */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
Name Type Required Description
assetId integer Yes The ID of the asset to retrieve.
versionNumber integer Yes The version number of the asset to retrieve.
AssetType string? No
AssetFormat string? No
skipSigningScripts boolean? No
clientInsert integer? No
scriptinsert integer? No
modulePlaceId integer? No
serverplaceid integer? No
expectedAssetType string? No
doNotFallbackToBaselineRepresentation boolean? No
contentRepresentationPriorityList string? No
accessContext string? No
Field Type Description
location string
errors object[] See below
requestId string
isArchived boolean
assetTypeId number
contentRepresentationSpecifier object See below
assetMetadatas object[] See below
isRecordable boolean

errors[] item fields:

Field Type Description
Code number
Message string
CustomErrorCode `“UnknownError” “NoPermissionToAsset”

contentRepresentationSpecifier fields:

Field Type Description
format string
majorVersion string
fidelity string
skipGenerationIfNotExist boolean

assetMetadatas[] item fields:

Field Type Description
metadataType 'UncompressedSize'
value string
Status Description
401 0: Authorization has been denied for this request.