LogoLogo
WebsiteBlogForumsSign up
  • Welcome
  • How Ready Player Me works
  • FAQ
  • 👩‍💻Integration Guides
    • Overview
    • Unity
      • Quickstart
      • Avatar Creator Integration
        • WebView Avatar Creator
          • Avatar Creator for Android & iOS
          • Avatar Creator for WebGL
        • Build your own Avatar Creator
          • Start with the sample
          • Elements
            • Asset Selection Element
            • Color Selection Element
            • Template Selection Element
            • Body Shapes Selection Element
            • Gender Selection Element
            • Avatar List Element
            • Photo Capture Element
            • Signup Element
            • Login Element
            • Logout Element
          • User Management
      • Load 2D Renders
      • Avatar Loader Window
      • Setup Multiplayer
      • Setup for XR (Beta)
        • Setup the Player Avatar
        • Setup Meta Movement SDK
        • Setup Final IK
        • Setup XR Hands
          • RpmHandDriver script
        • Facial Animations
        • VR Avatar Creator
      • Animations
        • Ready Player Me Animation Library
        • Mixamo Animations
      • Optimize
        • Avatar Configuration
        • Avatar Caching
        • Defer Agents
      • Code Samples
        • Loading 3D Avatars
        • Loading 2D Avatars
        • Avatar Creator (WebGL)
        • Avatar Creator (Desktop)
        • Avatar Creator (Mobile)
        • Distance-based LODs
      • Troubleshooting
        • Editor UI Window Issues
        • Avatar loading issues
        • iOS issues
        • WebGL issues
        • Firewall issues
        • Updating the SDK
          • Unity SDK 3.0.0 Migration guide
          • Unity SDK 4.0.0 Migration guide
          • Unity SDK 5.0.0
          • Unity SDK 7.0.0
          • WebView 2.0 Migration
        • Package installation issues
      • Help us improve the Unity SDK
      • FAQ for Unity
      • Early Access Features
    • Unreal Engine
      • Quickstart
        • Import SDK Manually
      • Avatar Creator Integration
        • Build your own Avatar Creator
          • Sample Structure
          • Customization Guide
        • WebView Avatar Creator
      • Load Avatars
      • Animations
        • Ready Player Me Animation Library
        • Loading Mixamo animations
        • Mannequin animation retargeting
        • Blender FBX export to UE
        • Oculus Lipsync integration
      • Optimize
        • Avatar configuration
        • Avatar caching
        • Avatar preloading
      • Code Samples
        • Unreal Engine 5 samples
        • Lyra project integration example
        • VR Avatars
        • Unreal Engine 4
      • Troubleshooting
        • Project compilation issues
        • Missing materials on built applications
        • Avatar loading issues
        • Animation issues
        • Unreal SDK breaking changes
        • Avatar lighting issues
        • Updating from earlier versions
          • Unreal SDK 3.0.0 Migration guide
        • Auto LOD issues
      • Help us improve the Unreal Engine SDK
      • FAQ for Unreal Engine
      • Early Access Features
    • React
      • Quickstart
    • React Native
    • iOS Native
    • Android Native
    • Web Integration
      • Quickstart
      • User Management
        • Guest Accounts
        • Account Linking
      • Avatar Creator integration
      • Optimize
    • API Integration
      • Quickstart
      • Custom Avatar Creator
      • User management
        • Ready Player Me Account
        • Anonymous Accounts
    • UX/UI Guidelines
      • Summary & quick tips
      • UX and UI guidelines and essentials
        • Foundation for good user experience
          • Layout
          • Colors
          • Typography
          • Icons
          • Dark mode and light mode
        • Mobile best practices
          • Layout
        • Making Ready Player Me feel native
          • Seamless Avatar Integration
          • Consistent Branding
          • Responsive Layout
          • Performance Optimization
        • Discoverability of the avatar editor
          • Onboarding tutorial
          • Clear navigation
          • Contextual Placement
  • 🖌️Customizing Guides
    • Studio (Developer Dashboard)
    • Avatar Creator Appearance
      • Avatar URLs
      • Avatar Shortcodes
    • Upload and Manage Custom Assets
      • Asset Manager in Studio
      • Configure in Studio
      • Manage custom assets using the API
      • Unlocking assets through API (Beta)
    • Create Custom Assets
      • Fullbody Outfits
        • Checking Skin Weights
      • Tops, Bottoms, Shoes
        • Editing templates
      • Hairstyle
      • Headwear
      • Facewear
      • Glasses
      • Hero Characters
      • Modeling Guidelines
  • 🔃API Reference
    • REST API
      • Authentication
      • Avatars
        • GET - 3D avatar
        • GET - 2D Render of an Avatar
        • GET - Metadata
        • PUT - Equip an asset
        • PUT - Unequip an asset
      • Assets
        • Asset Entity Properties
        • POST - Create Asset
        • GET - List Assets
        • PATCH - Update Asset
        • POST - Upload Asset Files
        • POST - Add Asset to Application
        • DELETE - Remove Asset from Application
        • PUT - Unlock asset for a user
        • PUT - Lock asset for a user
      • Users
        • POST - Create User
      • Auth
        • GET - Token
      • Changelog
    • Avatars
      • Full-body avatars
      • Full-body XR avatars
      • Half-body avatars
      • Morph targets
        • Apple ARKit
        • Oculus OVR LipSync
    • Avatar Creator
  • 🔉Support
    • Forums
    • Licensing & Privacy
Powered by GitBook
On this page
  • Get an avatar GLB by id.
  • Parameters, expected values, and examples
  • Parameters, expected values, and examples

Was this helpful?

  1. API Reference
  2. REST API
  3. Avatars

GET - 3D avatar

Get a 3D avatar GLB file with desired performance and configuration settings.

All avatars are hosted in a CDN under https://models.readyplayer.me.

Please always use the https://models.readyplayer.me URL for Avatar requests instead of https://api.readyplayer.me/.

Get an avatar GLB by id.

GET https://models.readyplayer.me/avatarId.glb

Get an avatar 3D GLB model with desired performance and configuration settings.

Path Parameters

Name
Type
Description

avatarId.glb*

String

ID of an avatar.

Query Parameters

Name
Type
Description

quality

String

low, medium or high - Use quality presets to combine performance related parameters.

meshLod

Int

[Deprecated] Use lod instead. 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.

useDracoMeshCompression

Boolean

Reduces file size by compressing output avatars with Draco mesh compression. More effective on complex meshes.

useMeshOptCompression

Boolean

[Deprecated] Reduces file size by compressing output avatars with Mesh Optimization compression. More effective on meshes with morph targets.

useQuantizeMeshOptCompression

Boolean

Reduces file size by quantizing vertex attributes and compressing output avatars with Mesh Optimization compression. More effective on meshes with morph targets.

pose

String

Defines the pose for a full-body avatar.

useHands

Boolean

Toggles hands for half-body VR avatars.

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

lod

Int

Control the triangle count of the entire avatar.

textureQuality

String

Choose which texture quality preset to get on the avatar.

{
    // Response
}

Parameters, expected values, and examples

You can combine multiple parameters by concatenating with &.

So for example requesting an avatar with lod 2 and without texture atlassing would look like that:

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?lod=2textureAtlas=none

Parameters, expected values, and examples

ID of an avatar.

Expected values (String)

  • 65a8dba831b23abb4f401bae.glb

Deprecated - Requesting avatar by shortCode, instead request by avatar ID.

  • ABC123.glb

Notes

You must include the .glb file extension or you will get a 404 return value.

Without any of the optional parameters, the avatar is returned based on default values.

Request avatar by ID

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb

Deprecated - Requesting avatar by shortCode, instead request by avatar ID.

https://models.readyplayer.me/ABC123.glb

Returned value

Use quality presets to combine performance related parameters from below.

Expected Values (String)

  • low

  • medium

  • high

The values behind those presets are the following:

  • low (meshLod=2, textureSizeLimit=256, textureAtlas=256, morphTargets=none)

  • medium (meshLod=1, textureSizeLimit=512=textureAtlas=512, morphTargets=none)

  • high (meshLod=0, textureSizeLimit=1024=textureAtlas=1024, morphTargets=none)

All other values overwrite quality. So e.g. you can use quality=low and overwrite the meshLod with 0 to get the high-res avatar. See Examples.

Request an avatar with quality high

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=high

Request an avatar with quality medium

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=medium

Request an avatar with quality low

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=low

Request an avatar with quality low but overwrite meshLod

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?quality=low&meshLod=0

Control the triangle count of the entire 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 lod 2

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?lod=2

Deprecated - Please use ?lod instead to get the best results.

Control 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.

Deprecated - Please use ?lod instead to get the best results.

Request an avatar with meshLod 2

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?meshLod=2

Set 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: 256

  • Max: 1024 (default)

Request an avatar with textureSize limited to 512 x 512

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureSizeLimit=512

Set 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.

These options are intended to provide more optimization control when having to render many Avatars in a 3D scene. The intention for low quality is to be used for Avatars that are farther in the distance and don't require as much detail.

Request an avatar with low quality textures

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=low

Request an avatar with medium quality textures

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=medium

Request an avatar with high quality textures

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureQuality=high

Generate 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.

Disable texture atlas:

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureAtlas=none

Create 512px texture atlas:

https://models.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.

At the moment, our Unity and Unreal SDKs do not officially support the WebP texture format. However, for web applications, utilizing the WebP format can be very effective to reduce avatar file size.

Expected Values (String)

  • webp

  • jpeg

  • png

Get an avatar with webp encoded textures

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureFormat=webp

Select the texture channels you want to have included in the .glb. (By default, the .glb comes with all available channels).

Expected Values (String)

  • baseColor

  • normal

  • metallicRoughness

  • emissive

  • occlusion

  • none

You can combine these values by comma separation. See examples.

Get avatar with no textures

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureChannels=none

Get avatar with only baseColor and normal map.

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?textureChannels=baseColor,normal

Comma-separated list of individual morph targets or morph target standard groups to include on the avatar.

Expected values (String)

  • Default

  • ARKit

  • Oculus Visemes

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://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?morphTargets=mouthSmile,ARKit

Define the pose for a full-body avatar.

Expected values (String)

  • A - Create a full-body avatar in A pose (default).

  • T - Create a full-body avatar in T pose.

Only applies to full-body avatars.

Create an avatar in T-pose

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?pose=T

Create an avatar in A-pose

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?pose=A

Reduce the file size by compressing output avatars with Draco mesh compression.

Expected values (Boolean)

  • true - Enable compression.

  • false - No compression (default).

Draco mesh compression is disabled by default for maximum compatibility for various glTF loaders.

Request an avatar with Draco mesh compression turned on

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?useDracoMeshCompression=true

Reduce 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).

Mesh Optimization compression is disabled by default for maximum compatibility for various glTF loaders.

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?useMeshOptCompression=true

Toggle hands for half-body VR avatars.

Expected values (Boolean)

  • false - Do not include hands with half-body VR avatars.

  • true - Include hands with half-body VR avatars (default).

Only applies to half-body avatars.

Enable hands for half-body VR avatars

https://models.readyplayer.me/65a8dba831b23abb4f401bae.glb?useHands=true
PreviousAvatarsNextGET - 2D Render of an Avatar

Last updated 12 months ago

Was this helpful?

You can get an avatar id or short code via postMessage returned from . You can read more about how to do that at .

You will receive a standardized You can import and modify this file in any 3D software that supports this format.

+ or any supported .

The default values above only apply when you have not requested any changes to those settings previously. Please reach out to if you want to reset your default settings.

🔃
Ready Player Me
Native Integration
.glb file.
morph targets
support@readyplayer.me
Atlasing on - 1 draw call (without transparent objects)
Atlassing off - 9 draw calls (without transparent objects)