requiresdb api
Public REST API — query the database from anywhere, including from inside Roblox scripts via game:HttpGet(). No account needed for reads.
https://smt.supabase.co/rest/v1
authentication
All requests need the anon key. For reads from Roblox, pass it as a query param since HttpGet doesn't support custom headers.
// Web requests — use header: apikey: YOUR_SUPABASE_ANON_KEY // Roblox HttpGet — use query param: ?apikey=YOUR_ANON_KEY
rate limits
Supabase free tier supports ~500 req/s. Cache results in your Roblox UI — don't call on every keystroke, use a debounce.
list requires
GET/requirespaginated list
| param | type | description |
|---|---|---|
| select | string | columns — default * |
| category | eq.admin | filter by category |
| order | upvotes.desc | sort column + direction |
| limit | number | max results (default 20) |
| offset | number | pagination |
-- Response example: [ { "id": "uuid-here", "name": "Dex Explorer", "require_id": "3436957371", "category": "utility", "upvotes": 142, "downvotes": 3, "description": "object explorer", "image_url": "https://...", "created_at": "2024-01-15T12:00:00Z" } ]
search by name
GET/requires?name=ilike.*query*case-insensitive search
-- Search "dex": /requires?name=ilike.*dex*&order=upvotes.desc&limit=10&apikey=KEY -- Search by require_id number: /requires?require_id=eq.3436957371&apikey=KEY
get by UUID
GET/requires?id=eq.{uuid}single record
/requires?id=eq.YOUR-UUID&apikey=KEY
get comments
GET/comments?require_id=eq.{uuid}comments for a require
/comments?select=text,created_at,profiles(username)&require_id=eq.UUID&order=created_at.asc&apikey=KEY
search from roblox UI
local HS = game:GetService("HttpService") local BASE = "https://ur_proyect.supabase.co/rest/v1" local KEY = "UR_ANON_KEY" local function searchRequires(query) local url = BASE .. "/requires?select=name,require_id,category,upvotes,description,image_url" .. "&name=ilike.*" .. HS:UrlEncode(query) .. "*" .. "&order=upvotes.desc&limit=10" .. "&apikey=" .. KEY local ok, data = pcall(function() return HS:JSONDecode(game:HttpGet(url)) end) return ok and data or {} end
full example — integrate in builder
-- Integración completa con el builder de spaoy local HS = game:GetService("HttpService") local BASE = "https://ur_proyect.supabase.co/rest/v1" local KEY = "UR_ANON_KEY" local function fetchRequires(query, category) local url = BASE .. "/requires" .. "?select=name,require_id,category,upvotes,description" .. "&order=upvotes.desc&limit=15" .. "&apikey=" .. KEY if query ~= "" then url = url .. "&name=ilike.*" .. HS:UrlEncode(query) .. "*" end if category and category ~= "all" then url = url .. "&category=eq." .. category end local ok, data = pcall(function() return HS:JSONDecode(game:HttpGet(url)) end) return ok and data or {} end -- Al hacer click en un resultado, cargarlo en el editor: local function loadFromDB(requireId) textBox.Text = "require(" .. requireId .. ")" _G.REQUIRE_CODE = textBox.Text end