How can I query all of the hats made by a person?

The URL is https://www.roblox.com/catalog/?Category=13&CreatorName= but that wouldn’t work using HTTP service. Is there a web API to do this?

I believe you are looking for the Catalog API:

in your case the query parameters for finding all hats made by a person would be(Using the catalog Api)

https://search.roblox.com/catalog/json?CatalogContext=1&Subcategory=9&CreatorID =(creator id)

Test

https://search.roblox.com/catalog/json?CatalogContext=1&Subcategory=9&CreatorID=1

However Assuming that you want to use this in-game you will have to look to proxies/WebServers(be warned it requires the use of third party software), one way you can query all of the hats made by one person in-game and get any other(most) data from roblox is using a module and tutorial here:

After following the server and client setup, i think it would be best to do something like this:

local ProxyService = require(game:GetService('ServerScriptService').ProxyService) 
local Proxy = ProxyService:New("https://l0234902394-234.herokuapp.com/", '5df5bc68dd0ce31598c9e51929c8e2e02785a04f55212221e895917f3730f17c') ---Replace with your proxy and key
local Http = game:GetService("HttpService")


function GetAllCatalogItems(UserID, Subcategory)
	
local Json =  Proxy:Get('https://search.roblox.com/catalog/json?CatalogContext=1&Subcategory='..Subcategory..'&CreatorID='..UserID).body

local Success, Data = pcall( function()
return Http:JSONDecode(Json) 
end)

if Success then
local TempTable = {}
for Index, Data in pairs(Data) do
	if Data then
		table.insert(TempTable, #TempTable+ 1, Data )
	end
end
return TempTable
end

return Success, print("A problem occurred ")

end


GetAllCatalogItems("UserID Goes Here", 9)---Table of all hats made by a User
----SubCategory is 9 for hats
1 Like