Skip to content

AvatarEditorService

Not yet Class Services NotCreatable Service

A service to support developer Avatar Editors.

Not implemented yet

This class exists in the current Roblox API but is not implemented in Nova yet. Scripts that reference it will fail at runtime.

0 Nova members · 85 modern Roblox members not implemented yet

Description

AvatarEditorService is a service to support developer Avatar Editors. It provides methods to modify the player's platform avatar, request information about a user's inventory, and request information about the catalog.

For more information regarding the Avatar Editor, see Avatar Editor Service.

Throttling

The following endpoints on AvatarEditorService have experience-level throttling:

For each experience, this throttling allows you to send up to 100 requests per second to these AvatarEditorService endpoints, regardless of the number of servers or user count. Exceeding these limits returns a 429 Too Many Requests error.

Item Details Response

The following methods return item data in a shared response format:

{
  "Id": 0,
  "ItemType": "Asset",
  "AssetType": "Image",
  "BundleType": "BodyParts",
  "Name": "string",
  "Description": "string",
  "ProductId": 0,
  "ItemStatus": ["New"],
  "ItemRestrictions": ["Collectible"],

  "BundledItems": [
    {
      "Id": 0,
      "Name": "string",
      "Type": "Asset",
      "AssetType": "string",
      "SupportsHeadShapes": false,
      "Owned": false
    }
  ],
  "IsRecolorable": false,

  "CollectibleItemId": "string",
  "TotalQuantity": 0,
  "UnitsAvailableForConsumption": 0,
  "QuantityLimitPerUser": 0,
  "HasResellers": false,
  "OffSaleDeadline": null,

  "Price": 0,
  "PremiumPricing": {
    "PremiumDiscountPercentage": 0,
    "PremiumPriceInRobux": 0
  },
  "LowestPrice": 0,
  "LowestResalePrice": 0,
  "PriceStatus": "string",
  "SaleLocationType": "ShopAndAllExperiences",
  "PurchaseCount": 0,
  "FavoriteCount": 0,

  "CreatorType": "User",
  "CreatorTargetId": 0,
  "CreatorName": "string",
  "CreatorHasVerifiedBadge": false,

  "SupportsHeadShapes": false,

  "TimedOptions": [
    { "Duration": 259200, "Price": 30 },
    { "Duration": 604800, "Price": 40 },
    { "Duration": 1209600, "Price": 50 }
  ]
}
Basic Information
Field Type Description
Id number The unique identifier of the item.
ItemType string The type of item: "Asset" or "Bundle". Corresponds to Enum.AvatarItemType.
AssetType string The asset type. Corresponds to Enum.AvatarAssetType values (e.g., "Hat", "Shirt"). Only present if ItemType is "Asset".
SupportsHeadShapes boolean Whether the asset supports head shape swapping. Only present if AssetType is "DynamicHead".
BundleType string The bundle type. Corresponds to Enum.BundleType values (e.g., "BodyParts", "Animations"). Only present if ItemType is "Bundle".
Name string The display name of the item.
Description string The item's description text.
ProductId number The product ID associated with this item.
ItemStatus array An array of status strings (e.g., "New", "Sale", "XboxExclusive", "AmazonExclusive").
ItemRestrictions array An array of restriction strings. See the itemRestrictions table below.
Bundle Information
Field Type Description
BundledItems array An array of items contained in the bundle. Only present if ItemType is "Bundle". Each entry contains:
Id: The unique identifier of the bundled item.
Name: The display name of the bundled item.
Type: The type of the bundled item (e.g., "Asset").
AssetType: The asset type as a string. Corresponds to Enum.AvatarAssetType values (e.g., "Hat", "DynamicHead").
SupportsHeadShapes: Whether the asset supports head shape swapping. Only present if AssetType is "DynamicHead".
Owned: Whether the bundled item is owned by the current user.
IsRecolorable boolean Whether the bundle supports skin tone matching. Only applies to BodyParts and DynamicHead bundles.
Collectible Information
Field Type Description
CollectibleItemId string The unique item ID of the collectible.
TotalQuantity number The total quantity of the collectible available for purchase (not resale).
UnitsAvailableForConsumption number The number of units available for purchase. Only applies to Limited items with remaining stock.
QuantityLimitPerUser number Maximum number of the same collectible item a user can own.
HasResellers boolean true when item is a Limited collectible and there are copies available for resale.
OffSaleDeadline string The date/time when the item goes off sale.
Pricing and Sale Information
Field Type Description
Price number The price in Robux. 0 if free or not for sale.
PremiumPricing table Premium pricing information. Contains the following fields:
PremiumDiscountPercentage: The discount percentage for Premium members.
PremiumPriceInRobux: The discounted price in Robux for Premium members.
LowestPrice number The lowest resale price for Limited items.
LowestResalePrice number The lowest resale price for the collectible in Robux.
PriceStatus string The price status (e.g., "Free", "Off Sale", "No Resellers").
SaleLocationType string The type of sale location setting. See SaleLocationType values below.
PurchaseCount number The total number of times this item has been purchased.
FavoriteCount number The total number of users who have favorited this item.
Creator Information
Field Type Description
CreatorType string Either User or Group. See Enum.CreatorType.
CreatorTargetId number The ID of the creator user or group.
CreatorName string The display name of the creator.
CreatorHasVerifiedBadge boolean Boolean of whether the creator has a verified badge.
Timed Options Information
Field Type Description
TimedOptions array Optional. An array of available timed options with durations and prices. Only present for assets that support timed ownership. Do not hardcode duration values; always retrieve them from the API as available options may change. Each entry contains:
Duration: The duration in seconds (e.g. 259200 for 3 days, 604800 for 7 days).
Price: The price in Robux for this duration.
SaleLocationType Values
Value Description
NotApplicable Default value, should not occur in practice.
ShopOnly Item can only be purchased in the Roblox catalog shop.
MyExperiencesOnly Item can only be purchased in the creator's experiences.
ShopAndMyExperiences Item can be purchased in the Roblox catalog shop or the creator's experiences.
ExperiencesById Item can only be purchased in a specific list of experiences.
ShopAndAllExperiences Item can be purchased in the Roblox catalog shop and all experiences.
ExperiencesDevApiOnly Item can only be purchased in experiences via developer APIs.
ShopAndExperiencesById Item can be purchased in the Roblox catalog shop or a whitelisted list of experiences.
itemRestrictions Values
itemRestrictions Limited or Unlimited
empty Unlimited
Collectible UGC Limited
Limited Roblox Limited
LimitedUnique Roblox Limited Unique

Inheritance

Object → Instance → AvatarEditorService

Methods

Member Signature Summary
BustAvatarFetchCache AvatarEditorService:BustAvatarFetchCache(): null —
CheckApplyDefaultClothing AvatarEditorService:CheckApplyDefaultClothing(humanoidDescription: HumanoidDescription): HumanoidDescription Used to apply default clothing to the HumanoidDescription if necessary.
CheckApplyDefaultClothingAsync AvatarEditorService:CheckApplyDefaultClothingAsync(humanoidDescription: HumanoidDescription): HumanoidDescription Used to apply default clothing to the HumanoidDescription if necessary.
ConformToAvatarRules AvatarEditorService:ConformToAvatarRules(humanoidDescription: HumanoidDescription): HumanoidDescription Deprecated. Returns a copy of the given HumanoidDescription that conforms to the platform Avatar rules.
ConformToAvatarRulesAsync AvatarEditorService:ConformToAvatarRulesAsync(humanoidDescription: HumanoidDescription): HumanoidDescription Returns a copy of the given HumanoidDescription that conforms to the platform Avatar rules.
GetAccessoryType AvatarEditorService:GetAccessoryType(avatarAssetType: AvatarAssetType): AccessoryType Returns the AccessoryType that corresponds to the given AvatarAssetType.
GetAvatarRules AvatarEditorService:GetAvatarRules(): Dictionary Returns the platform Avatar rules for things such as scaling, default shirts and pants, number of wearable assets.
GetAvatarRulesAsync AvatarEditorService:GetAvatarRulesAsync(): Dictionary Returns the platform Avatar rules for things such as scaling, default shirts and pants, number of wearable assets.
GetBatchItemDetails AvatarEditorService:GetBatchItemDetails(itemIds: Array, itemType: AvatarItemType): Array Gets the item details for a list of items at once.
GetBatchItemDetailsAsync AvatarEditorService:GetBatchItemDetailsAsync(itemIds: Array, itemType: AvatarItemType): Array Gets the item details for a list of items at once.
GetBundlesByAssetIdAsync AvatarEditorService:GetBundlesByAssetIdAsync(assetId: int64, limit: int64 = 10): CatalogPages Returns a CatalogPages object containing bundles that include the given asset.
GetFavorite AvatarEditorService:GetFavorite(itemId: int64, itemType: AvatarItemType): bool Returns if the Players.LocalPlayer has favorited the given bundle or asset.
GetFavoriteAsync AvatarEditorService:GetFavoriteAsync(itemId: int64, itemType: AvatarItemType): bool Returns if the Players.LocalPlayer has favorited the given bundle or asset.
GetHeadShapesAsync AvatarEditorService:GetHeadShapesAsync(): Array Returns an array of head shape names that the Players.LocalPlayer owns.
GetInventory AvatarEditorService:GetInventory(assetTypes: Array): InventoryPages Returns an InventoryPages object with information about owned items in the users inventory with the given AvatarAssetTypes.
GetInventoryAsync AvatarEditorService:GetInventoryAsync(assetTypes: Array): InventoryPages Returns an InventoryPages object with information about owned items in the users inventory with the given AvatarAssetTypes.
GetItemDetails AvatarEditorService:GetItemDetails(itemId: int64, itemType: AvatarItemType): Dictionary Returns the item details for the given item.
GetItemDetailsAsync AvatarEditorService:GetItemDetailsAsync(itemId: int64, itemType: AvatarItemType): Dictionary Returns the item details for the given item.
GetOutfitDetails AvatarEditorService:GetOutfitDetails(outfitId: int64): Dictionary Returns the outfit details for the given outfit.
GetOutfitDetailsAsync AvatarEditorService:GetOutfitDetailsAsync(outfitId: int64): Dictionary Returns the outfit details for the given outfit.
GetOutfits AvatarEditorService:GetOutfits(outfitSource: OutfitSource = All, outfitType: OutfitType = All): OutfitPages Returns outfit data for the Players.LocalPlayer.
GetOutfitsAsync AvatarEditorService:GetOutfitsAsync(outfitSource: OutfitSource = All, outfitType: OutfitType = All): OutfitPages Returns outfit data for the Players.LocalPlayer.
GetRecommendedAssets AvatarEditorService:GetRecommendedAssets(assetType: AvatarAssetType, contextAssetId: int64 = 0): Array Returns a list of recommended assets based on a given AssetType and asset ID.
GetRecommendedAssetsAsync AvatarEditorService:GetRecommendedAssetsAsync(assetType: AvatarAssetType, contextAssetId: int64 = 0): Array Returns a list of recommended assets based on a given AssetType and asset ID.
GetRecommendedBundles AvatarEditorService:GetRecommendedBundles(bundleId: int64): Array Returns a list of recommended bundles for a given bundle id.
GetRecommendedBundlesAsync AvatarEditorService:GetRecommendedBundlesAsync(bundleId: int64): Array Returns a list of recommended bundles for a given bundle id.
NoPromptApplyProfileConfiguration AvatarEditorService:NoPromptApplyProfileConfiguration(profileConfiguration: Dictionary): bool —
NoPromptCreateOutfit AvatarEditorService:NoPromptCreateOutfit(humanoidDescription: HumanoidDescription, rigType: HumanoidRigType, name: string, gearAssetId: int64 = 0, outfitOptions: Dictionary = nil, outfitType: Variant): bool —
NoPromptDeleteOutfit AvatarEditorService:NoPromptDeleteOutfit(outfitId: int64): bool —
NoPromptRenameOutfit AvatarEditorService:NoPromptRenameOutfit(outfitId: int64, name: string): bool —
NoPromptSaveAvatar AvatarEditorService:NoPromptSaveAvatar(humanoidDescription: HumanoidDescription, rigType: HumanoidRigType, saveDict: Dictionary, gearAssetId: int64 = 0, profileConfiguration: Dictionary = nil): bool —
NoPromptSaveAvatarThumbnailCustomization AvatarEditorService:NoPromptSaveAvatarThumbnailCustomization(thumbnailType: AvatarThumbnailCustomizationType, emoteAssetId: int64, cameraDistanceScale: float, yRotDeg: float, fieldOfViewDeg: float = 0): bool —
NoPromptSetFavorite AvatarEditorService:NoPromptSetFavorite(itemId: int64, itemType: AvatarItemType, shouldFavorite: bool): bool —
NoPromptUpdateOutfit AvatarEditorService:NoPromptUpdateOutfit(outfitId: int64, humanoidDescription: HumanoidDescription, rigType: HumanoidRigType, gearAssetId: int64 = 0, outfitOptions: Dictionary = nil): bool —
PerformCreateOutfitWithDescription AvatarEditorService:PerformCreateOutfitWithDescription(humanoidDescription: HumanoidDescription, name: string, profileConfiguration: Dictionary = nil): null —
PerformDeleteOutfit AvatarEditorService:PerformDeleteOutfit(): null —
PerformRenameOutfit AvatarEditorService:PerformRenameOutfit(name: string): null —
PerformSaveAvatarWithDescription AvatarEditorService:PerformSaveAvatarWithDescription(humanoidDescription: HumanoidDescription, addedAssets: Array, removedAssets: Array): null —
PerformSetFavorite AvatarEditorService:PerformSetFavorite(): null —
PerformUpdateOutfit AvatarEditorService:PerformUpdateOutfit(humanoidDescription: HumanoidDescription, profileConfiguration: Dictionary = nil): null —
PromptAllowInventoryReadAccess AvatarEditorService:PromptAllowInventoryReadAccess(): null Prompts the Players.LocalPlayer to allow the developer to read what items the user has in their inventory and other avatar editor related infor…
PromptCreateOutfit AvatarEditorService:PromptCreateOutfit(outfit: HumanoidDescription, rigType: HumanoidRigType, outfitOptions: Dictionary = nil, outfitType: Variant): null Prompts the Players.LocalPlayer to save the given HumanoidDescription as an outfit.
PromptDeleteOutfit AvatarEditorService:PromptDeleteOutfit(outfitId: int64): null Prompts the Players.LocalPlayer to delete the given outfit.
PromptRenameOutfit AvatarEditorService:PromptRenameOutfit(outfitId: int64): null Prompts the Players.LocalPlayer to rename the given outfit.
PromptSaveAvatar AvatarEditorService:PromptSaveAvatar(humanoidDescription: HumanoidDescription, rigType: HumanoidRigType): null Prompts the Players.LocalPlayer to update their avatar based on the given HumanoidDescription and [HumanoidRigType](.…
PromptSetFavorite AvatarEditorService:PromptSetFavorite(itemId: int64, itemType: AvatarItemType, shouldFavorite: bool): null Prompts the Players.LocalPlayer to favorite or unfavorite the given asset or bundle.
PromptUpdateOutfit AvatarEditorService:PromptUpdateOutfit(outfitId: int64, updatedOutfit: HumanoidDescription, rigType: HumanoidRigType): null Prompts the Players.LocalPlayer to update the given outfit.
refreshAvatarThumbnails AvatarEditorService:refreshAvatarThumbnails(thumbnailTypes: Array): null —
SearchCatalog AvatarEditorService:SearchCatalog(searchParameters: CatalogSearchParams): CatalogPages Returns a CatalogPages object containing the result of the given search.
SearchCatalogAsync AvatarEditorService:SearchCatalogAsync(searchParameters: CatalogSearchParams): CatalogPages Returns a CatalogPages object containing the result of the given search.
SetAllowInventoryReadAccess AvatarEditorService:SetAllowInventoryReadAccess(inventoryReadAccessGranted: bool): null —
SignalCreateOutfitFailed AvatarEditorService:SignalCreateOutfitFailed(): null —
SignalCreateOutfitPermissionDenied AvatarEditorService:SignalCreateOutfitPermissionDenied(): null —
SignalDeleteOutfitFailed AvatarEditorService:SignalDeleteOutfitFailed(): null —
SignalDeleteOutfitPermissionDenied AvatarEditorService:SignalDeleteOutfitPermissionDenied(): null —
SignalRenameOutfitFailed AvatarEditorService:SignalRenameOutfitFailed(): null —
SignalRenameOutfitPermissionDenied AvatarEditorService:SignalRenameOutfitPermissionDenied(): null —
SignalSaveAvatarFailed AvatarEditorService:SignalSaveAvatarFailed(): null —
SignalSaveAvatarPermissionDenied AvatarEditorService:SignalSaveAvatarPermissionDenied(): null —
SignalSetFavoriteFailed AvatarEditorService:SignalSetFavoriteFailed(): null —
SignalSetFavoritePermissionDenied AvatarEditorService:SignalSetFavoritePermissionDenied(): null —
SignalUpdateOutfitFailed AvatarEditorService:SignalUpdateOutfitFailed(): null —
SignalUpdateOutfitPermissionDenied AvatarEditorService:SignalUpdateOutfitPermissionDenied(): null —

Events

Member Signature Summary
NotifyBustAvatarFetchCache NotifyBustAvatarFetchCache() —
OpenAllowInventoryReadAccess OpenAllowInventoryReadAccess() —
OpenPromptCreateOufit OpenPromptCreateOufit(humanoidDescription: HumanoidDescription, rigType: HumanoidRigType) —
OpenPromptDeleteOutfit OpenPromptDeleteOutfit(outfitId: int64) —
OpenPromptRenameOutfit OpenPromptRenameOutfit(outfitId: int64) —
OpenPromptSaveAvatar OpenPromptSaveAvatar(humanoidDescription: HumanoidDescription, rigType: HumanoidRigType) —
OpenPromptSetFavorite OpenPromptSetFavorite(itemId: int64, itemType: AvatarItemType, shouldFavorite: bool) —
OpenPromptUpdateOutfit OpenPromptUpdateOutfit(outfitId: int64, humanoidDescription: HumanoidDescription, rigType: HumanoidRigType) —
PromptAllowInventoryReadAccessCompleted PromptAllowInventoryReadAccessCompleted(result: AvatarPromptResult) Fires when the AvatarEditorService.PromptAllowInventoryReadAccess() prompt is responded to by the user.
PromptApplyProfileConfigurationCompleted PromptApplyProfileConfigurationCompleted(result: AvatarPromptResult) —
PromptCreateOutfitCompleted PromptCreateOutfitCompleted(result: AvatarPromptResult, failureType: Variant) Fires when the PromptSaveOutfit operation is completed.
PromptDeleteOutfitCompleted PromptDeleteOutfitCompleted(result: AvatarPromptResult) Fires when the PromptDeleteOutfit operation is completed.
PromptRenameOutfitCompleted PromptRenameOutfitCompleted(result: AvatarPromptResult) Fires when the PromptRenameOutfit operation is completed.
PromptSaveAvatarCompleted PromptSaveAvatarCompleted(result: AvatarPromptResult, humanoidDescription: HumanoidDescription) Fires when the AvatarEditorService.PromptSaveAvatar() operation is completed.
PromptSaveAvatarThumbnailCustomizationCompleted PromptSaveAvatarThumbnailCustomizationCompleted(result: AvatarPromptResult, failureType: Variant) —
PromptSetFavoriteCompleted PromptSetFavoriteCompleted(result: AvatarPromptResult) Fires when the AvatarEditorService.PromptSetFavorite() operation is completed.
PromptUpdateOutfitCompleted PromptUpdateOutfitCompleted(result: AvatarPromptResult) Fires when the AvatarEditorService.PromptUpdateOutfit() operation is completed.

Roblox reference: AvatarEditorService

Generated from Nova's API dump and Roblox creator-docs. Nova-only members come from the engine's reflection metadata.