Skip to content

Asset Delivery v1

Reference for the Asset Delivery v1 endpoints on Roblox.

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

MethodPathName
GET/v1/alias/:aliasgetAliasAlias
GET/v1/assetgetAsset
GET/v1/assetId/:assetIdgetAssetidAssetid
GET/v1/assetId/:assetId/version/:versionNumbergetAssetidAssetidVersionVersionnumber
POST/v1/assets/batchpostAssetsBatch
GET/v1/marAssetHash/:marAssetHash/marCheckSum/:marCheckSumgetMarassethashMarassethashMarchecksumMarchecksum
GET/v1/openCloud/assetId/:assetIdgetOpencloudAssetidAssetid
GET/v1/openCloud/assetId/:assetId/version/:versionNumbergetOpencloudAssetidAssetidVersionVersionnumber

GET /v1/alias/:alias

Retrieves an asset by its alias (universeID/name)

Usage
import { fetchApi } from 'rozod';
import { getAliasAlias } from 'rozod/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getAliasAlias, {
alias: /* string */,
AssetType: /* string */,
Accept: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
accessContext: /* string? */
});
NameTypeRequiredDescription
aliasstringYesThe alias of the asset to retrieve.
AssetTypestringYes
AcceptstringYes
AssetFormatstringYes
skipSigningScriptsboolean?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidinteger?No
expectedAssetTypestring?No
accessContextstring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring

GET /v1/asset

Usage
import { fetchApi } from 'rozod';
import { getAsset } from 'rozod/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getAsset, {
AssetType: /* string */,
Accept: /* 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? */
});
NameTypeRequiredDescription
AssetTypestringYes
AcceptstringYes
AssetFormatstringYes
idinteger?No
userAssetIdinteger?No
assetVersionIdinteger?No
versioninteger?No
universeIdinteger?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidstring?No
assetNamestring?No
hashstring?No
marAssetHashstring?No
marCheckSumstring?No
expectedAssetTypestring?No
skipSigningScriptsboolean?No
permissionContextstring?No
doNotFallbackToBaselineRepresentationboolean?No
contentRepresentationPriorityListstring?No
assetResolutionModestring?No
accessContextstring?No

Type: unknown


GET /v1/assetId/:assetId

Retrieves an asset by its ID

Usage
import { fetchApi } from 'rozod';
import { getAssetidAssetid } from 'rozod/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getAssetidAssetid, {
assetId: /* integer */,
AssetType: /* string */,
Accept: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
NameTypeRequiredDescription
assetIdintegerYesThe ID of the asset to retrieve.
AssetTypestringYes
AcceptstringYes
AssetFormatstringYes
skipSigningScriptsboolean?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidinteger?No
expectedAssetTypestring?No
doNotFallbackToBaselineRepresentationboolean?No
contentRepresentationPriorityListstring?No
accessContextstring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring

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

Retrieves an asset by its ID and version number.

Usage
import { fetchApi } from 'rozod';
import { getAssetidAssetidVersionVersionnumber } from 'rozod/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getAssetidAssetidVersionVersionnumber, {
assetId: /* integer */,
versionNumber: /* integer */,
AssetType: /* string */,
Accept: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
NameTypeRequiredDescription
assetIdintegerYesThe ID of the asset to retrieve.
versionNumberintegerYesThe version of the asset to retrieve.
AssetTypestringYes
AcceptstringYes
AssetFormatstringYes
skipSigningScriptsboolean?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidinteger?No
expectedAssetTypestring?No
doNotFallbackToBaselineRepresentationboolean?No
contentRepresentationPriorityListstring?No
accessContextstring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring

POST /v1/assets/batch

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

Array of objects:

FieldTypeDescription
assetNamestring
assetTypestring
clientInsertboolean
placeIdnumber
requestIdstring
scriptInsertboolean
serverPlaceIdnumber
universeIdnumber
acceptstring
encodingstring
hashstring
userAssetIdnumber
assetIdnumber
versionnumber
assetVersionIdnumber
modulePlaceIdnumber
assetFormatstring
assetResolutionModestring
accessContextstring
contentRepresentationPriorityListstring
doNotFallbackToBaselineRepresentationboolean

Array of objects:

FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring

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/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getMarassethashMarassethashMarchecksumMarchecksum, {
marAssetHash: /* string */,
marCheckSum: /* string */,
AssetType: /* string */,
Accept: /* string */,
AssetFormat: /* string */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */
});
NameTypeRequiredDescription
marAssetHashstringYesThe mar (moderation agnostic) hash of the asset to retrieve.
marCheckSumstringYesThe mar (moderation agnostic) checksum of the asset to retrieve.
AssetTypestringYes
AcceptstringYes
AssetFormatstringYes
skipSigningScriptsboolean?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidinteger?No
expectedAssetTypestring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring
StatusDescription
4002: invalid server request
3: Encoding cannot be empty
4045: 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/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getOpencloudAssetidAssetid, {
assetId: /* integer */,
AssetType: /* string? */,
Accept: /* string? */,
AssetFormat: /* string? */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
NameTypeRequiredDescription
assetIdintegerYesThe ID of the asset to retrieve.
AssetTypestring?NoThe AssetType header value specifying the expected asset type.
Acceptstring?NoThe Accept header value specifying the preferred response content type.
AssetFormatstring?NoThe AssetFormat header value specifying the desired asset format. Overridden by robloxAssetFormat if both are provided.
skipSigningScriptsboolean?NoWhether to skip script signing for the returned asset. Used for script assets that don’t require signing.
clientInsertinteger?NoSet to 1 to indicate this is a client insert request.
scriptinsertinteger?NoSet to 1 to indicate this is a script insert request.
modulePlaceIdinteger?NoThe place ID of the module making the request.
serverplaceidinteger?NoThe server place ID making the request.
expectedAssetTypestring?NoThe expected asset type as a fallback when assetType header is not provided.
doNotFallbackToBaselineRepresentationboolean?NoWhether to prevent fallback to baseline representation when specific content representations are not available.
contentRepresentationPriorityListstring?NoBase64URL-encoded JSON string specifying the priority list of desired content representations (format, version, fidelity).
accessContextstring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring
StatusDescription
4010: 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/lib/endpoints/assetdeliveryv1';
const data = await fetchApi(getOpencloudAssetidAssetidVersionVersionnumber, {
assetId: /* integer */,
versionNumber: /* integer */,
AssetType: /* string? */,
Accept: /* string? */,
AssetFormat: /* string? */,
skipSigningScripts: /* boolean? */,
clientInsert: /* integer? */,
scriptinsert: /* integer? */,
modulePlaceId: /* integer? */,
serverplaceid: /* integer? */,
expectedAssetType: /* string? */,
doNotFallbackToBaselineRepresentation: /* boolean? */,
contentRepresentationPriorityList: /* string? */,
accessContext: /* string? */
});
NameTypeRequiredDescription
assetIdintegerYesThe ID of the asset to retrieve.
versionNumberintegerYesThe version number of the asset to retrieve.
AssetTypestring?No
Acceptstring?No
AssetFormatstring?No
skipSigningScriptsboolean?No
clientInsertinteger?No
scriptinsertinteger?No
modulePlaceIdinteger?No
serverplaceidinteger?No
expectedAssetTypestring?No
doNotFallbackToBaselineRepresentationboolean?No
contentRepresentationPriorityListstring?No
accessContextstring?No
FieldTypeDescription
locationstring
errorsobject[]See below
requestIdstring
isArchivedboolean
assetTypeIdnumber
contentRepresentationSpecifierobjectSee below
assetMetadatasobject[]See below
isRecordableboolean

errors[] item fields:

FieldTypeDescription
Codenumber
Messagestring
CustomErrorCode`“UnknownError""NoPermissionToAsset"

contentRepresentationSpecifier fields:

FieldTypeDescription
formatstring
majorVersionstring
fidelitystring
skipGenerationIfNotExistboolean

assetMetadatas[] item fields:

FieldTypeDescription
metadataType'UncompressedSize'
valuestring
StatusDescription
4010: Authorization has been denied for this request.