8 min read

Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.

GET /v2/users/{userId}/inventory — openapi

Get user's inventory by multiple Roblox.Platform.Assets.AssetType.

GamePass and Badges not allowed.

Endpoint

Method: GET

Path: /v2/users/{userId}/inventory

Servers:

Parameters

NameLocationRequiredDescription
userIdpathtrueThe inventory owner's userId.
assetTypesquerytrueThe asset types to query.
filterDisapprovedAssetsqueryfalseFilters moderated assets when enabled.
showApprovedOnlyqueryfalseFilters moderated assets and assets pending review when enabled.
limitqueryfalseThe number of results per request.
cursorqueryfalseThe paging cursor for the previous or next page.
sortOrderqueryfalseThe order the results are sorted in.
[
  {
    "in": "path",
    "name": "userId",
    "description": "The inventory owner's userId.",
    "required": true,
    "schema": {
      "type": "integer",
      "format": "int64"
    }
  },
  {
    "in": "query",
    "name": "assetTypes",
    "description": "The asset types to query.",
    "required": true,
    "style": "form",
    "explode": false,
    "schema": {
      "type": "array",
      "items": {
        "description": " ['Image' = 1, 'TShirt' = 2, 'Audio' = 3, 'Mesh' = 4, 'Lua' = 5, 'HTML' = 6, 'Text' = 7, 'Hat' = 8, 'Place' = 9, 'Model' = 10, 'Shirt' = 11, 'Pants' = 12, 'Decal' = 13, 'Avatar' = 16, 'Head' = 17, 'Face' = 18, 'Gear' = 19, 'Badge' = 21, 'GroupEmblem' = 22, 'Animation' = 24, 'Arms' = 25, 'Legs' = 26, 'Torso' = 27, 'RightArm' = 28, 'LeftArm' = 29, 'LeftLeg' = 30, 'RightLeg' = 31, 'Package' = 32, 'YouTubeVideo' = 33, 'GamePass' = 34, 'App' = 35, 'Code' = 37, 'Plugin' = 38, 'SolidModel' = 39, 'MeshPart' = 40, 'HairAccessory' = 41, 'FaceAccessory' = 42, 'NeckAccessory' = 43, 'ShoulderAccessory' = 44, 'FrontAccessory' = 45, 'BackAccessory' = 46, 'WaistAccessory' = 47, 'ClimbAnimation' = 48, 'DeathAnimation' = 49, 'FallAnimation' = 50, 'IdleAnimation' = 51, 'JumpAnimation' = 52, 'RunAnimation' = 53, 'SwimAnimation' = 54, 'WalkAnimation' = 55, 'PoseAnimation' = 56, 'LocalizationTableManifest' = 59, 'LocalizationTableTranslation' = 60, 'EmoteAnimation' = 61, 'Video' = 62, 'TexturePack' = 63, 'TShirtAccessory' = 64, 'ShirtAccessory' = 65, 'PantsAccessory' = 66, 'JacketAccessory' = 67, 'SweaterAccessory' = 68, 'ShortsAccessory' = 69, 'LeftShoeAccessory' = 70, 'RightShoeAccessory' = 71, 'DressSkirtAccessory' = 72, 'FontFamily' = 73, 'FontFace' = 74, 'MeshHiddenSurfaceRemoval' = 75, 'EyebrowAccessory' = 76, 'EyelashAccessory' = 77, 'MoodAnimation' = 78, 'DynamicHead' = 79, 'CodeSnippet' = 80, 'AdsVideo' = 81, 'OtaUpdate' = 82, 'Screenshot' = 83, 'RuntimePropertySet' = 84, 'StorePreviewVideo' = 85, 'GamePreviewVideo' = 86, 'CreatorExperienceConfig' = 87, 'FaceMakeup' = 88, 'LipMakeup' = 89, 'EyeMakeup' = 90, 'VoxelFragment' = 91, 'AvatarBackground' = 92, 'TextDocument' = 93, 'Post' = 94, 'AnimatedImage' = 95, 'ComputeFunction' = 96]",
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12,
          13,
          16,
          17,
          18,
          19,
          21,
          22,
          24,
          25,
          26,
          27,
          28,
          29,
          30,
          31,
          32,
          33,
          34,
          35,
          37,
          38,
          39,
          40,
          41,
          42,
          43,
          44,
          45,
          46,
          47,
          48,
          49,
          50,
          51,
          52,
          53,
          54,
          55,
          56,
          59,
          60,
          61,
          62,
          63,
          64,
          65,
          66,
          67,
          68,
          69,
          70,
          71,
          72,
          73,
          74,
          75,
          76,
          77,
          78,
          79,
          80,
          81,
          82,
          83,
          84,
          85,
          86,
          87,
          88,
          89,
          90,
          91,
          92,
          93,
          94,
          95,
          96
        ]
      }
    }
  },
  {
    "in": "query",
    "name": "filterDisapprovedAssets",
    "description": "Filters moderated assets when enabled.",
    "schema": {
      "type": "boolean",
      "default": false
    }
  },
  {
    "in": "query",
    "name": "showApprovedOnly",
    "description": "Filters moderated assets and assets pending review when enabled.",
    "schema": {
      "type": "boolean",
      "default": false
    }
  },
  {
    "in": "query",
    "name": "limit",
    "description": "The number of results per request.",
    "schema": {
      "type": "integer",
      "format": "int32",
      "enum": [
        10,
        25,
        50,
        100
      ],
      "default": 10
    }
  },
  {
    "in": "query",
    "name": "cursor",
    "description": "The paging cursor for the previous or next page.",
    "schema": {
      "type": "string"
    }
  },
  {
    "in": "query",
    "name": "sortOrder",
    "description": "The order the results are sorted in.",
    "schema": {
      "type": "string",
      "enum": [
        "Asc",
        "Desc"
      ],
      "default": "Asc"
    }
  }
]

Responses

StatusDescription
200OK
4001: Invalid user Id. 2: Invalid asset type Id.
4033: Insufficient permission. 4: You are not authorized to view this user's inventory.
{
  "200": {
    "description": "OK",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Web.WebAPI.Models.ApiPageResponse_Roblox.Inventory.Api.V2.UserAssetItemModelV2_"
        }
      },
      "text/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Web.WebAPI.Models.ApiPageResponse_Roblox.Inventory.Api.V2.UserAssetItemModelV2_"
        }
      }
    }
  },
  "400": {
    "description": "1: Invalid user Id.\r\n2: Invalid asset type Id."
  },
  "403": {
    "description": "3: Insufficient permission.\r\n4: You are not authorized to view this user's inventory."
  }
}

Authentication

{
  "security": [
    {},
    {
      "roblox-legacy-cookie": []
    }
  ],
  "securitySchemes": {
    "roblox-api-key": {
      "type": "apiKey",
      "description": "A configurable key that allows granular access to Roblox resources. See https://create.roblox.com/docs/cloud/auth/api-keys for more information.",
      "name": "x-api-key",
      "in": "header"
    },
    "roblox-legacy-cookie": {
      "type": "apiKey",
      "description": "A browser cookie that represents the identity of a Roblox user. DO NOT SHARE THIS. Sharing this will allow someone to log in as you and to steal your Robux and items. We do not recommend using cookies to call endpoints. When possible, use API keys with the x-api-key header or OAuth 2.0 instead for authentication.",
      "in": "cookie",
      "name": ".ROBLOSECURITY"
    },
    "roblox-oauth2": {
      "type": "oauth2",
      "description": "Build or authorize apps to access Roblox resources. See https://create.roblox.com/docs/cloud/auth/oauth2-overview for more information.",
      "flows": {
        "authorizationCode": {
          "authorizationUrl": "https://apis.roblox.com/oauth/v1/authorize",
          "tokenUrl": "https://apis.roblox.com/oauth/v1/token",
          "refreshUrl": "https://apis.roblox.com/oauth/v1/token",
          "scopes": {}
        }
      }
    }
  }
}

Complete Operation Definition

{
  "tags": [
    "Assets",
    "Inventories",
    "Users"
  ],
  "summary": "Get user's inventory by multiple Roblox.Platform.Assets.AssetType.",
  "description": "GamePass and Badges not allowed.",
  "parameters": [
    {
      "in": "path",
      "name": "userId",
      "description": "The inventory owner's userId.",
      "required": true,
      "schema": {
        "type": "integer",
        "format": "int64"
      }
    },
    {
      "in": "query",
      "name": "assetTypes",
      "description": "The asset types to query.",
      "required": true,
      "style": "form",
      "explode": false,
      "schema": {
        "type": "array",
        "items": {
          "description": " ['Image' = 1, 'TShirt' = 2, 'Audio' = 3, 'Mesh' = 4, 'Lua' = 5, 'HTML' = 6, 'Text' = 7, 'Hat' = 8, 'Place' = 9, 'Model' = 10, 'Shirt' = 11, 'Pants' = 12, 'Decal' = 13, 'Avatar' = 16, 'Head' = 17, 'Face' = 18, 'Gear' = 19, 'Badge' = 21, 'GroupEmblem' = 22, 'Animation' = 24, 'Arms' = 25, 'Legs' = 26, 'Torso' = 27, 'RightArm' = 28, 'LeftArm' = 29, 'LeftLeg' = 30, 'RightLeg' = 31, 'Package' = 32, 'YouTubeVideo' = 33, 'GamePass' = 34, 'App' = 35, 'Code' = 37, 'Plugin' = 38, 'SolidModel' = 39, 'MeshPart' = 40, 'HairAccessory' = 41, 'FaceAccessory' = 42, 'NeckAccessory' = 43, 'ShoulderAccessory' = 44, 'FrontAccessory' = 45, 'BackAccessory' = 46, 'WaistAccessory' = 47, 'ClimbAnimation' = 48, 'DeathAnimation' = 49, 'FallAnimation' = 50, 'IdleAnimation' = 51, 'JumpAnimation' = 52, 'RunAnimation' = 53, 'SwimAnimation' = 54, 'WalkAnimation' = 55, 'PoseAnimation' = 56, 'LocalizationTableManifest' = 59, 'LocalizationTableTranslation' = 60, 'EmoteAnimation' = 61, 'Video' = 62, 'TexturePack' = 63, 'TShirtAccessory' = 64, 'ShirtAccessory' = 65, 'PantsAccessory' = 66, 'JacketAccessory' = 67, 'SweaterAccessory' = 68, 'ShortsAccessory' = 69, 'LeftShoeAccessory' = 70, 'RightShoeAccessory' = 71, 'DressSkirtAccessory' = 72, 'FontFamily' = 73, 'FontFace' = 74, 'MeshHiddenSurfaceRemoval' = 75, 'EyebrowAccessory' = 76, 'EyelashAccessory' = 77, 'MoodAnimation' = 78, 'DynamicHead' = 79, 'CodeSnippet' = 80, 'AdsVideo' = 81, 'OtaUpdate' = 82, 'Screenshot' = 83, 'RuntimePropertySet' = 84, 'StorePreviewVideo' = 85, 'GamePreviewVideo' = 86, 'CreatorExperienceConfig' = 87, 'FaceMakeup' = 88, 'LipMakeup' = 89, 'EyeMakeup' = 90, 'VoxelFragment' = 91, 'AvatarBackground' = 92, 'TextDocument' = 93, 'Post' = 94, 'AnimatedImage' = 95, 'ComputeFunction' = 96]",
          "enum": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            16,
            17,
            18,
            19,
            21,
            22,
            24,
            25,
            26,
            27,
            28,
            29,
            30,
            31,
            32,
            33,
            34,
            35,
            37,
            38,
            39,
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            48,
            49,
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            59,
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69,
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79,
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89,
            90,
            91,
            92,
            93,
            94,
            95,
            96
          ]
        }
      }
    },
    {
      "in": "query",
      "name": "filterDisapprovedAssets",
      "description": "Filters moderated assets when enabled.",
      "schema": {
        "type": "boolean",
        "default": false
      }
    },
    {
      "in": "query",
      "name": "showApprovedOnly",
      "description": "Filters moderated assets and assets pending review when enabled.",
      "schema": {
        "type": "boolean",
        "default": false
      }
    },
    {
      "in": "query",
      "name": "limit",
      "description": "The number of results per request.",
      "schema": {
        "type": "integer",
        "format": "int32",
        "enum": [
          10,
          25,
          50,
          100
        ],
        "default": 10
      }
    },
    {
      "in": "query",
      "name": "cursor",
      "description": "The paging cursor for the previous or next page.",
      "schema": {
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "sortOrder",
      "description": "The order the results are sorted in.",
      "schema": {
        "type": "string",
        "enum": [
          "Asc",
          "Desc"
        ],
        "default": "Asc"
      }
    }
  ],
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.Web.WebAPI.Models.ApiPageResponse_Roblox.Inventory.Api.V2.UserAssetItemModelV2_"
          }
        },
        "text/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.Web.WebAPI.Models.ApiPageResponse_Roblox.Inventory.Api.V2.UserAssetItemModelV2_"
          }
        }
      }
    },
    "400": {
      "description": "1: Invalid user Id.\r\n2: Invalid asset type Id."
    },
    "403": {
      "description": "3: Insufficient permission.\r\n4: You are not authorized to view this user's inventory."
    }
  },
  "servers": [
    {
      "url": "https://inventory.roblox.com"
    }
  ],
  "x-roblox-engine-usability": {
    "apiKeyWithHttpService": false
  },
  "security": [
    {},
    {
      "roblox-legacy-cookie": []
    }
  ],
  "externalDocs": {
    "url": "https://create.roblox.com/docs/cloud/reference/features/assets#inventory_get_v2_users__userId__inventory"
  },
  "x-roblox-recommended-alternatives": [
    {
      "url": "https://apis.roblox.com/cloud/v2/users/{user_id}/inventory-items",
      "httpMethod": "GET",
      "documentationUrl": "https://create.roblox.com/docs/cloud/reference/features/inventories#Cloud_ListInventoryItems"
    }
  ]
}