GET - 3D avatar
Get a 3D avatar GLB file with desired performance and configuration settings.
Get an avatar GLB by id.
GET https://avatars.readyplayer.me/avatarId.glb
Get an avatar GLB model with desired performance and configuration settings.
Path Parameters
avatarId.glb
String
ID of an avatar.
Query Parameters
quality
String
Use quality presets to combine performance related parameters.
meshLod
Int
Control the triangle count of the assets equipped on the avatar.
textureSizeLimit
Int
Sets the upper limit for texture resolution in pixels of any texture in the avatar.
textureAtlas
Int
Generates a texture atlas of the desired resolution. The operation merges all meshes and splits opaque objects from transparent ones resulting in a maximum of 2 draw calls.
textureChannels
String
Define which textureChannels should be included in the .glb. It can be a comma-separated combination of the following values: baseColor, normal, metallicRoughness, emissive, occlusion
morphTargets
String
Comma-separated list of individual morph targets or morph target standard groups to include on the avatar.
dracoCompression
Boolean
Reduces file size by compressing output avatars with Draco mesh compression. More effective on complex meshes.
meshCompression
Boolean
Reduces file size by compressing output avatars with Mesh Optimization compression. More effective on meshes with morph targets.
textureFormat
String
Reduce avatar file size by formatting all textures into the specified format. Using webp encoding can result in up to 40% reduction in avatar file size. Supported values: webp, jpeg, png
textureQuality
String
Choose which texture quality preset to get on the avatar.
morphTargetsGroup
String
Preset for list of morph targets to include (e.g. animation shapes for mouth movement).
meshDisplacement
Number
Offset for assets / clothing (usually to reduce clipping).
disableAnimation
Boolean
Disable embedded animations in assets like the nft set (disabled gltf extension "animation pointer") mostly for compability reasons or file size reduction
preferRedirects
Boolean
If set to true (default) will redirect to CDN avatar url.
removeSkin
Boolean
Removes hidden skin surfaces under top, bottom and footwear on the body, reducing triangles, clipping and file size (hidden surface removal)
deferredCompression
Boolean
Delay compression processing (possibly for async optimization pipelines).
targetBlueprintId
String
Blueprint used to compile the avatar.
{
    // Response
}Parameters, expected values, and examples
Parameters, expected values, and examples
ID of an avatar.
Expected values (String)
65a8dba831b23abb4f401bae
.glb
Notes
You must include the .glb to recieve the glb
Request avatar by ID
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glbReturned value
You will receive a standardized .glb file. You can import and modify this file in any 3D software that supports this format.
Use quality presets to combine performance related parameters from below.
Expected values (String)
low- meshLod=2, textureSizeLimit=256, textureAtlas=256, morphTargets=nonemedium- meshLod=1, textureSizeLimit=512=textureAtlas=512, morphTargets=nonehigh- meshLod=0, textureSizeLimit=1024=textureAtlas=1024, morphTargets=noneultra- meshLod=0, textureSizeLimit=2048=textureAtlas=2048, morphTargets=none
Request an avatar with quality high
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=highRequest an avatar with quality medium
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=mediumRequest an avatar with quality low
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=lowRequest an avatar with quality low but overwrite meshLod
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=low&meshLod=0Control the triangle count of the assets equipped on the avatar. This does not impact the quality of the head model of the avatar.
Expected values (Number)
0- No triangle count reduction is applied (default).1- Retain 50% of the original triangle count.2- Retain 25% of the original triangle count.
Request an avatar with meshLod 2
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?meshLod=2Set the upper limit for texture resolution in pixels of any texture in the avatar.
Expected values (Number)
The value needs to be a multiple of two.
Min:
256Max:
4096(default)
Request an avatar with textureSize limited to 512 x 512
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureSizeLimit=512Set the quality for textures on the Avatar by choosing from one of the presets.
Expected values (String)
low- overall lower quality textures on the avatar and equipped assets.medium- higher quality head and upper body assets (default).high- overall high quality textures on the whole avatar and assets.
Request an avatar with low quality textures
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=lowRequest an avatar with medium quality textures
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=mediumRequest an avatar with high quality textures
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=highGenerate a texture atlas of the desired resolution. This operation merges all meshes and splits opaque objects from transparent ones resulting in a maximum of 2 draw calls.
The texture atlas is generated for all PBR channels - baseColor, normal, metallicRoughness, emissive, and occlusion, if any of the assets making up the avatar includes them.
Expected values (String, Number)
none- Do not create a texture atlas (default).256- Create a texture atlas of 256x256px.512- Create a texture atlas of 512x512px.1024- Create a texture atlas of 1024x1024px.2048- Create a texture atlas of 2048x2048px.
Disable texture atlas:
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureAtlas=noneCreate 512px texture atlas:
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureAtlas=512

Reduce avatar file size by formatting all textures into the specified format.
Using webp encoding can result in up to 40% reduction in avatar file size.
Expected Values (String)
webpjpegpng
Get an avatar with webp encoded textures
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureFormat=webpSelect the texture channels you want to have included in the .glb. (By default, the .glb comes with all available channels).
Expected values (String)
baseColornormalmetallicRoughnessemissiveocclusionnone
Get avatar with no textures
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureChannels=noneGet avatar with only baseColor and normal map.
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureChannels=baseColor,normalComma-separated list of individual morph targets or morph target standard groups to include on the avatar.
Expected values (String)
DefaultARKitOculus Visemes+ or any supported morph targets.
The default value is "Default".
Disable all morph targets
?morphTargets=none
Use selected morph targets
?morphTargets=mouthSmile,mouthOpen
Use morph target standard groups
?morphTargets=ARKit,Oculus Visemes
Use selected morph targets and standard group
?morphTargets=mouthSmile,ARKit
Example:
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?morphTargets=mouthSmile,ARKitReduce the file size by compressing output avatars with Draco mesh compression.
Expected values (Boolean)
true- Enable compression.false- No compression (default).
Request an avatar with Draco mesh compression turned on
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?dracoCompression=trueReduce the file size by compressing output avatars with Mesh Optimization compression. This technique is more effective on avatars with morph targets.
Expected values (Boolean)
true- Enable compression.false- No compression (default).
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?meshCompression=trueComma-separated list of individual morph target group to include (e.g. animation shapes for mouth movement)
Expected values (String)
Editor expressionsEditor emotionsBasic expressionsARKitSpeechGraphicsDefault + Oculus Visemes + eyeBlinkOculus VisemesEyes ExtraDefaultMetaQuest
Request with single group
https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?morphTargetsGroup=ARKitRequest with multiple groups
https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?morphTargetsGroup=Editor expressions,ARKitOffset for assets / clothing (usually to reduce clipping)
Expected values (Number):
Range between:
min: 0
max: 0.01https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?meshDisplacement=0.01Flag to disable embedded animations in assets like the nft set (disabled gltf extension "animation pointer") mostly for compability reasons or file size reduction
Expected values (Boolean)
true- Disable embedded (default).false- Enable embedded.
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?disableAnimation=falseIf this flag is set to true, a redirection to our CDN is returned. Then the glb (if follow redirects is enabled) is returned.
If is set to false, the glb is returned.
Expected values (Boolean)
true- Redirect to CDN url (default).false- Return the glb.
We really encourage to let this as true (by default), so you can benefict from the CDN. Also, we recommend to not cache/store the returned url from CDN. Simply use the https://avatars.readyplayer.me API
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?preferRedirects=trueIf this flag is set to true, it removes hidden skin surfaces under top, bottom and footwear on the body, reducing triangles, clipping and file size (hidden surface removal)
Expected values (Boolean)
true- Remove hidden skin (default).false- Do not remove hidden skin.
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?removeSkin=trueIf this flag is set to true it defers the compression
Expected values (Boolean)
true- Defers compression.false- Do not defer compression (default).
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?deferredCompression=trueSpecifies the blueprint used to compile the avatar.
This is used, for example, if we have an avatar that is created for a human (human is a blueprint), and we want it for an orc (orc is another blueprint)
Expected value (String)
https://avatars.readyplayer.me/65a8dba831b23abb4f401bae.glb?targetBlueprintId=9998dba831b23abb4f555baeThe default values above only apply when you have not requested any changes to those settings previously. Please reach out to [email protected] if you want to reset your default settings.
Last updated
Was this helpful?

