Skip to main content
List and detail endpoints return scripts in a single consistent shape. Detail endpoints add a few extra fields (noted below). Parse defensively — new fields may be added over time.

Identity

string
Stable, opaque listing id (lst_…). Use this to reference a script long-term.
string
Human-readable URL segment — https://roscripts.io/s/{slug}. May change if the owner renames.
string | null
Short code behind the loadstring URL (script.roscripts.io/{shortId}).

Content

string
string
Short blurb shown on cards.
string
Long-form markdown description. Detail endpoint only.
string[]
string | null
UI library, e.g. Rayfield.
string | null
16:9 thumbnail URL, or null if the listing uses an auto-generated card.

Classification & trust

'free' | 'paid'
boolean
The creator is a verified RoScripts creator.
boolean
Whether the script gates execution behind a key system.
Where to get the key, when key is true. Detail responses.
boolean
true when the script isn’t tied to a specific game.
boolean
Flagged by the owner/staff as no longer working.

Stats

number
Rolling 30-day view count (drives ranking).
number
All-time view count.
number
number
number
Top-tier “excellent” votes — a stronger positive signal than a like.
number
number
number
Computed ranking score (higher is better). Combines votes, view velocity, and freshness.

Game & creator

object | null
{ placeId, name, image }, or null for universal scripts.
object | null
{ username, verified, pro, avatar }. We never expose internal user ids or emails.
string | null
Direct execution URL — loadstring(game:HttpGet(...))(). null only when no short code exists.
string | null
Where to fetch raw source. Only present when the source is actually servable (free + keyless).
string | null
Purchase link for paid scripts.
string | null
Optional community/support link.

Timestamps

string
ISO 8601.
string
ISO 8601. Use with updatedSince for syncing.

Search-only

string[]
On search results, which fields matched the query (e.g. ["title","tags"]).