How to automatically get items from the catalog?

I want to be able to automatically grab items from the catalog without having to manually go and get individual ID’s. I’ve looked through External Catalog Queries | Documentation - Roblox Creator Hub but nothing there shows how to actually do it

Can you be more specific with what you mean by “grab items from the catalog”?

If you mean that you would like to obtain an item from the catalog as an Instance, then you can use InsertService:LoadAsset() to load an asset from the catalog by its AssetId.

1 Like

Is why I don’t want to use LoadAsset().

I want a way for something to go to the catalog grab say the top 250 hats, and return back a table with all the info for those hats

1 Like

In this case you would have make a request to the roblox servers via HTTP as demonstrated in the dev hub post you referenced in the OP.

Example URL:
https://catalog.roblox.com/v1/search/items/details?Category=11&Subcategory=9&SortType=2&SortAggregation=5&Limit=30 click the link for an example of what will be returned

This would return a list of the top 30 hats and their properties by amount of sales, in JSON format of course. To get more than 30, you would have to use pages, to move to the next page of items. This is quite annoying, but we have to work with it until roblox ups the max Limit.

I’m assuming you want to implement this into roblox, and to do that you will need to use HTTPService and a Proxy server. The Proxy is needed because roblox doesn’t want their own programs messing with their website, for security reasons. Of course If you planned to do this in a language besides roblox lua, such as Python or JS, a Proxy would not be necessary.

Let me know if you have any questions :smile:.

1 Like

You can create a “proxy” in PHP with a few lines of code

<?php
    $RobloxCatalogAPI = "https://catalog.roblox.com/v1/search/items/details?";
    $String_Quries = "Category=3&MaxPrice=1000";
    $cURL_call = curl_init($RobloxCatalogAPI .$String_Quries);  
    curl_setopt($cURL_call, CURLOPT_RETURNTRANSFER, true);
    $cURL_data = curl_exec($cURL_call);
        die($cURL_data);
?>
1 Like

Hello, would you mind explaining to me how to change pages

Yes, I probably should have explained it since it is a little bit tricky at first.

It looks like someone left a good response on your own post, which explains it well:

1 Like