Core Concepts
Precise definitions for scripts, slugs, raw endpoints, visibility, tokens, expiry, fetch limits, revisions, and completion tracking.
- Script
- The source content Runny stores. The raw endpoint serves those bytes (optionally wrapped for completion tracking). Runny does not interpret the file.
- Slug
- The unique 12-character identifier in
/r/{slug}and/s/{slug}. It is not a title slug. It does not change when you edit the body. - Raw endpoint
/r/{slug}returnstext/plainscript content. No session cookie. Browsers and crawlers are told not to index it.- Visibility
- Public — anyone can fetch the raw URL. Unlisted — same raw fetch, share page hides the body from strangers. Private — raw fetch requires a fetch token. Free accounts are public only.
- Fetch token
- A credential for private raw content. Send
Authorization: Bearer. Query?token=is accepted on/r/only; prefer the header. This is not an API token and not a login cookie. - Expiration
- The instant after which a live script can no longer be fetched. Free scripts last 24 hours and can be renewed for another 24 hours. Time expiry and first-fetch caps both return
410 expired. - Fetch limit
- Two layers: a per-script
max_fetches(first-fetch sets this to 1) and the Free plan’s daily and monthly fetch quotas. Plan quotas are counted on successful raw fetches, not on client exit codes. - Revision / version
- An immutable snapshot of the body and runtime at save time. Labels look like
1.1,1.2, then2.0. The latest ten are kept. Restore writes a new revision; it does not rewrite history. - Completion tracking
- Optional. When enabled, the fetched body is wrapped so the client can POST start and complete callbacks. That reports what happened on the client. It is not Runny executing the script. Untracked fetches still count toward fetch quotas.