Skip to content

Avatar v2

Reference for the Avatar v2 endpoints on Roblox.

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

MethodPathName
GET/v2/avatar/avatargetAvatarAvatar
POST/v2/avatar/set-body-colorspostAvatarSetBodyColors
POST/v2/avatar/set-wearing-assetspostAvatarSetWearingAssets
GET/v2/avatar/users/:userId/avatargetAvatarUsersUseridAvatar
GET/v2/avatar/users/:userId/outfitsgetAvatarUsersUseridOutfits
PATCH/v2/outfits/:userOutfitIdpatchOutfitsUseroutfitid
POST/v2/outfits/createpostOutfitsCreate

GET /v2/avatar/avatar

Returns details about the authenticated user’s avatar.

Usage
import { fetchApi } from 'rozod';
import { getAvatarAvatar } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(getAvatarAvatar, {
checkAssetAvailability: /* boolean? */
});
NameTypeRequiredDescription
checkAssetAvailabilityboolean?NoWhether to return assets with availability status.
FieldTypeDescription
scalesobjectSee below
playerAvatarType`13`
bodyColor3sobjectSee below
assetsobject[]See below
defaultShirtAppliedboolean
defaultPantsAppliedboolean
emotesobject[]See below

scales fields:

FieldTypeDescription
heightnumber
widthnumber
headnumber
depthnumber
proportionnumber
bodyTypenumber

bodyColor3s fields:

FieldTypeDescription
headColor3string
torsoColor3string
rightArmColor3string
leftArmColor3string
rightLegColor3string
leftLegColor3string

assets[] item fields:

FieldTypeDescription
idnumber
namestring
assetTypeobjectSee below
currentVersionIdnumber
metaobjectSee below
availabilityStatusstring
expirationTimestring
supportsHeadShapesboolean

assetType fields:

FieldTypeDescription
idnumber
namestring

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

emotes[] item fields:

FieldTypeDescription
assetIdnumber
assetNamestring
positionnumber
StatusDescription
4010: Authorization has been denied for this request.

POST /v2/avatar/set-body-colors

Sets the authenticated user’s body colors.

Usage
import { fetchApi } from 'rozod';
import { postAvatarSetBodyColors } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(postAvatarSetBodyColors, {
body: { /* ... */ }
});
FieldTypeDescription
headColor3string
torsoColor3string
rightArmColor3string
leftArmColor3string
rightLegColor3string
leftLegColor3string
FieldTypeDescription
successboolean
StatusDescription
4010: Authorization has been denied for this request.
4030: Token Validation Failed

POST /v2/avatar/set-wearing-assets

Sets the avatar’s current assets to the list.

Usage
import { fetchApi } from 'rozod';
import { postAvatarSetWearingAssets } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(postAvatarSetWearingAssets, {
body: { /* ... */ }
});
FieldTypeDescription
assetsobject[]See below

assets[] item fields:

FieldTypeDescription
idnumber
metaobjectSee below

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber
FieldTypeDescription
invalidAssetsobject[]See below
invalidAssetIdsnumber[]
successboolean

invalidAssets[] item fields:

FieldTypeDescription
idnumber
namestring
assetTypeobjectSee below
currentVersionIdnumber
metaobjectSee below
availabilityStatusstring
expirationTimestring
supportsHeadShapesboolean

assetType fields:

FieldTypeDescription
idnumber
namestring

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber
StatusDescription
4003: Invalid assetId
5: Meta does not apply to specified asset type
7: Required meta is not provided for the specific asset type
4010: Authorization has been denied for this request.
4030: Token Validation Failed
5002: Failed to wear asset.

GET /v2/avatar/users/:userId/avatar

Returns details about a specified user’s avatar.

Usage
import { fetchApi } from 'rozod';
import { getAvatarUsersUseridAvatar } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(getAvatarUsersUseridAvatar, {
userId: /* integer */,
checkAssetAvailability: /* boolean? */
});
NameTypeRequiredDescription
userIdintegerYes
checkAssetAvailabilityboolean?NoWhether to return assets with availability status.
FieldTypeDescription
scalesobjectSee below
playerAvatarType`13`
bodyColor3sobjectSee below
assetsobject[]See below
defaultShirtAppliedboolean
defaultPantsAppliedboolean
emotesobject[]See below

scales fields:

FieldTypeDescription
heightnumber
widthnumber
headnumber
depthnumber
proportionnumber
bodyTypenumber

bodyColor3s fields:

FieldTypeDescription
headColor3string
torsoColor3string
rightArmColor3string
leftArmColor3string
rightLegColor3string
leftLegColor3string

assets[] item fields:

FieldTypeDescription
idnumber
namestring
assetTypeobjectSee below
currentVersionIdnumber
metaobjectSee below
availabilityStatusstring
expirationTimestring
supportsHeadShapesboolean

assetType fields:

FieldTypeDescription
idnumber
namestring

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

emotes[] item fields:

FieldTypeDescription
assetIdnumber
assetNamestring
positionnumber
StatusDescription
4001: The specified user does not exist.
2: An account for the given userId does not exist!

GET /v2/avatar/users/:userId/outfits

Gets a list of outfits for the specified user.

Usage
import { fetchApi } from 'rozod';
import { getAvatarUsersUseridOutfits } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(getAvatarUsersUseridOutfits, {
userId: /* integer */,
paginationToken: /* string? */,
outfitType: /* string? */,
page: /* integer? = 1 */,
itemsPerPage: /* integer? = 25 */,
isEditable: /* boolean? */
});
NameTypeRequiredDescription
userIdintegerYesThe user id.
paginationTokenstring?NoThe token received from the response to get the next page. For the first request, this value should be empty. Note : If no value is sent the 1st page will be returned.
outfitTypestring?NoThe outfit type being searched for, null will return all outfitTypes.
pageinteger? = 1NoThe page number of the current page of requests, default is 1.
itemsPerPageinteger? = 25NoThe max number of outfits that can be returned.
isEditableboolean?NoWhether the outfits are editable. A null value will lead to no filtering.
FieldTypeDescription
dataobject[]See below
paginationTokenstring

data[] item fields:

FieldTypeDescription
idnumber
namestring
isEditableboolean
outfitTypestring
StatusDescription
4001: The specified user does not exist.
2: An account for the given userId does not exist!

PATCH /v2/outfits/:userOutfitId

Updates the contents of an outfit.

Usage
import { fetchApi } from 'rozod';
import { patchOutfitsUseroutfitid } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(patchOutfitsUseroutfitid, {
userOutfitId: /* integer */,
body: { /* ... */ }
});
NameTypeRequiredDescription
userOutfitIdintegerYesThe user outfit id.
FieldTypeDescription
namestring
bodyColorsobjectSee below
assetsobject[]See below
scaleobjectSee below
playerAvatarTypestring
outfitType`01

bodyColors fields:

FieldTypeDescription
headColorIdnumber
torsoColorIdnumber
rightArmColorIdnumber
leftArmColorIdnumber
rightLegColorIdnumber
leftLegColorIdnumber

assets[] item fields:

FieldTypeDescription
idnumber
metaobjectSee below

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
heightnumber
widthnumber
headnumber
depthnumber
proportionnumber
bodyTypenumber
FieldTypeDescription
idnumber
namestring
isEditableboolean
outfitTypestring
StatusDescription
4001: The specified userOutfit does not exist!
1: Must provide both assetIds and bodyColors in to update outfit contents.
3: Body colors must be valid BrickColor IDs
4: Invalid outfit name
5: Asset is not wearable by you
8: Invalid Player Avatar Type. Valid types are R6 and R15
11: Meta does not apply to specified asset type
12: Meta is required for this specific asset type
4010: Authorization has been denied for this request.
4030: Token Validation Failed
2: You don’t have permission to update this outfit.
5006: An error occurred while trying to update the outfit

POST /v2/outfits/create

Creates a new outfit.

Usage
import { fetchApi } from 'rozod';
import { postOutfitsCreate } from 'rozod/lib/endpoints/avatarv2';
const data = await fetchApi(postOutfitsCreate, {
body: { /* ... */ }
});
FieldTypeDescription
namestring
bodyColorsobjectSee below
assetsobject[]See below
scaleobjectSee below
playerAvatarTypestring
outfitType`01

bodyColors fields:

FieldTypeDescription
headColorIdnumber
torsoColorIdnumber
rightArmColorIdnumber
leftArmColorIdnumber
rightLegColorIdnumber
leftLegColorIdnumber

assets[] item fields:

FieldTypeDescription
idnumber
metaobjectSee below

meta fields:

FieldTypeDescription
ordernumber
puffinessnumber
positionobjectSee below
rotationobjectSee below
scaleobjectSee below
headShape`01
staticFacialAnimationboolean
versionnumber

position fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

rotation fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
Xnumber
Ynumber
Znumber

scale fields:

FieldTypeDescription
heightnumber
widthnumber
headnumber
depthnumber
proportionnumber
bodyTypenumber

Type: unknown

StatusDescription
4003: Body colors must be valid BrickColor IDs
4: Invalid outfit name
5: Asset is not wearable by you and was not added to the outfit
7: Invalid Player Avatar Type. Valid types are R6 and R15
8: Invalid assetIds
9: Meta does not apply to specified asset type
10: Required meta is not provided for the specific asset type
4010: Authorization has been denied for this request.
4030: Token Validation Failed
1: You already have the maximum number of outfits
5006: An error occurred while creating the outfit