---
title: "Search for catalog items."
method: GET
path: "/v2/search/items/details"
tags: ["Assets", "Avatars"]
---

# Search for catalog items.

`GET /v2/search/items/details`

This endpoint is for search by item type ids.

## Query parameters

- `Taxonomy` string
- `AssetTypeIds` integer[]
- `BundleTypeIds` integer[]
- `CategoryFilter` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
- `SortAggregation` 0 | 1 | 2 | 3 | 4 | 5
- `SortType` 0 | 1 | 2 | 3 | 4 | 5
- `CreatorType` 0 | 1 | 2
- `CreatorTargetId` integer
- `CreatorName` string
- `MaxPrice` integer
- `MinPrice` integer
- `Keyword` string
- `IncludeNotForSale` boolean
- `TriggeredByTopicDiscovery` boolean
- `SalesTypeFilter` 0 | 1 | 2 | 3 | 4
- `Topics` string
- `limit` 10 | 28 | 30 | 60 | 120
- `cursor` string
- `sortOrder` 'Desc'

## Response `200`

OK

- RobloxCatalogApiCatalogSearchPageResponseRobloxCatalogApiCatalogSearchDetailedResponseItemV2 — ApiPageResponse for catalog search.
  - `keyword` string — Keyword used for search query.
  - `elasticsearchDebugInfo` RobloxCatalogApiElasticsearchDebugInfo
    - `elasticsearchQuery` string — Gets or sets the nest query that resulted from the operation.
    - `isFromCache` boolean — Gets or sets if the results were returned from cache.
    - `indexName` string — Gets or sets the index name.
    - `isTerminatedEarly` boolean — Gets or sets if the query was Terminated Early.
    - `isForceTerminationEnabledByRequest` boolean — Gets or sets if Force Termination was Enabled in the Request.
    - `searchResultDataSource` string — Gets or sets the search result data source.
    - `searchResultRelevanceScore` string — Gets or sets the search result relevance score.
    - `searchResultEngagementScore` string — Gets or sets the search result engagement score.
  - `previousPageCursor` string
  - `nextPageCursor` string
  - `data` RobloxCatalogApiCatalogSearchDetailedResponseItemV2[]
    - `bundledItems` RobloxCatalogApiBundleItemDetailModelV2[] — The System.Collections.Generic.IEnumerable`1 contained in the bundle, serialized if item is a bundle.
      - `owned` boolean
      - `id` integer
      - `name` string
      - `type` string
      - `supportsHeadShapes` boolean — Whether the bundle item supports head shapes.
      - `assetType` integer — The asset type of the bundle item, if it's an asset.
    - `taxonomy` RobloxCatalogApiTaxonomyModel[] — The taxonomy ids and names for this item.
      - `taxonomyId` string — The id value to pass into taxonomy field in SearchV2 catalog-api.
      - `taxonomyName` string — The localized human readable name of the category.
    - `itemCreatedUtc` string, date-time — The UTC creation date-time of the asset or bundle.
    - `discountInformation` RobloxCatalogApiDiscountInformation
      - `originalPrice` integer
      - `totalDiscountPercentage` number, float
      - `totalDiscountAmount` integer
      - `discounts` RobloxCatalogApiDiscount[]
        - `robuxDiscountAmount` integer
        - `robuxDiscountPercentage` number, float
        - `discountCampaign` string
        - `localizedDiscountAttribution` string
    - `id` integer — The Item Id.
    - `itemType` 1 | 2 — The Roblox.Catalog.Api.CatalogSearchDetailedResponseItem.ItemType item type. ['Asset' = 1, 'Bundle' = 2]
    - `assetType` 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 — The Roblox.Platform.Assets.AssetType serialized if item is an asset.
    - `bundleType` 1 | 2 | 3 | 4 — The Roblox.Platform.Bundles.Core.BundleType serialized if item is a bundle.
    - `isRecolorable` boolean — Gets or sets the property whether a bundle is recolorable or not. Not serialized for asset.
    - `name` string — The item name.
    - `description` string — The item description.
    - `productId` integer — The product id of corresponding item.
    - `itemStatus` integer[] — The System.Collections.Generic.IEnumerable`1 if item has Roblox.Catalog.Api.CatalogItemStatus.
    - `itemRestrictions` integer[] — The System.Collections.Generic.IEnumerable`1 if item has Roblox.Catalog.Api.CatalogItemRestriction.
    - `creatorHasVerifiedBadge` boolean — The verified status of a creator.
    - `creatorType` 0 | 1 | 2 — The Roblox.Catalog.Api.CatalogSearchDetailedResponseItem.CreatorType of the item's creator.
    - `creatorTargetId` integer — The creator id of the item's creator.
    - `creatorName` string — The creator name of the item's creator.
    - `price` integer — The item's price.
    - `lowestPrice` integer — The item's lowest price, only if the item is resellable and there are resellers.
    - `lowestResalePrice` integer — The item's lowest resale price, only if the item is resellable and there are resellers, including current user.
    - `priceStatus` string — The localized string item status if the item's price should not be displayed.
    - `unitsAvailableForConsumption` integer — The number of items in stock, only if the item is resellable and is limitedEdition.
    - `favoriteCount` integer — The number of times the item has been favorited.
    - `offSaleDeadline` string, date-time — When the item will go off sale, if the item has an off deadline.
    - `collectibleItemId` string — The item's collectible item id. It is an UUID if a item is collectible type. Otherwise, it is null.
    - `totalQuantity` integer — The collectible or limited-unique item's total quantity of unique instances.
    - `saleLocationType` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 — The sale location type of the item. ['NotApplicable' = 0, 'ShopOnly' = 1, 'MyExperiencesOnly' = 2, 'ShopAndMyExperiences' = 3, 'ExperiencesById' = 4, 'ShopAndAllExperiences' = 5, 'ExperiencesDevApiOnly' = 6, 'ShopAndExperiencesById' = 7]
    - `hasResellers` boolean — An indicator if the item has resellers or not (null if not resellable).
    - `isOffSale` boolean — An indicator if the item is off sale or not.
    - `quantityLimitPerUser` integer — Quantity limit for how many instances a user can buy.
    - `supportsHeadShapes` boolean — Whether the item supports head shapes.
    - `timedOptions` RobloxCatalogApiTimedOption[] — The timed options for the item.
      - `days` integer — The days for the timed option.
      - `price` integer — The price for the timed option.
      - `discountInformation` RobloxCatalogApiDiscountInformation
        - `originalPrice` integer
        - `totalDiscountPercentage` number, float
        - `totalDiscountAmount` integer
        - `discounts` RobloxCatalogApiDiscount[]
          - `robuxDiscountAmount` integer
          - `robuxDiscountPercentage` number, float
          - `discountCampaign` string
          - `localizedDiscountAttribution` string
      - `selected` boolean — To indicate if this option is selected by the client.

## Other responses

- `400` — 1: Category subcategory selection not supported. 2: Creator id not found. 3: Creator type not found or cannot search by CreatorTargetId with CreatorType.All 4: Genre not found. 5: Sort combination not supported. 6: Invalid price range. 10: StartRequest is invalid.
- `403` — 7: User is unauthorized. 22: In-experience search is denied for this place or universe.
- `429` — 8: The flood limit has been exceeded. 8: The flood limit has been exceeded.
- `503` — 18: Search request timed out

---

[API](https://skmtc.net/roblox/apis/roblox-api.md) · [All operations](https://skmtc.net/roblox/apis/roblox-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/roblox/roblox-api/versions/756260310407/schema)
