For LLMs & agents
Every Hep.gg API doc ships a plain-text, machine-readable twin for LLMs, coding agents, and RAG indexers. Open it from the "LLM doc" button on any API page, or fetch it directly.
For LLMs & agents
Every API reference in these docs ships an LLM twin: a second copy of the same page, rewritten for machines. The twin has the same facts as the human page but is stripped of styling and structured for parsing: flat headings, short declarative sentences, every field spelled out with its type and constraints, full request examples, complete response shapes, and every error code. Point a model, a coding agent, or a retrieval pipeline at a twin and it can integrate a Hep.gg app without scraping the rendered site.
Start at the index
https://docs.hep.gg/llms.txt is the machine index: a plain-text glossary of every documentation page, each linked to its /llms/... endpoint. An agent can fetch this one URL and then recursively reach every page without ever leaving the /llms endpoints. Want it all in a single fetch instead? https://docs.hep.gg/llms-full.txt is the entire documentation set concatenated into one file.
Three ways to reach a page
- The "LLM doc" button. Every API reference page has one at the bottom. It opens that page's plain-text twin in a new tab. This is the easiest way to grab the reference for whatever you are reading.
- Fetch it directly. Swap
/docsfor/llmsin any page URL. The human pagehttps://docs.hep.gg/docs/database/overviewhas the plain-text version athttps://docs.hep.gg/llms/database/overview. This works for every page, not just the per-app overviews. - Start at the index and follow the links, as above.
Legacy URLs still work
Hep.gg used to publish these references at https://hep.gg/llms.txt and https://hep.gg/llms/<app>.txt. Those URLs keep working: each one now permanently redirects to its new home. https://hep.gg/llms.txt forwards to the index at https://docs.hep.gg/llms.txt, and https://hep.gg/llms/database.txt forwards to https://docs.hep.gg/llms/database/overview. Nothing you have bookmarked or cached breaks. Prefer the new URLs for anything new.
The directory
| App | Reference (LLM twin) | What it covers |
|---|---|---|
| Uploader | uploader/overview | ShareX-style file uploads and the /:id file serve. |
| URL Shortener | uploader/url-shortener | Creating shortlinks. |
| SMS | sms/overview | Sending outbound SMS at sms.hep.gg. |
| email/overview | The transactional email send API. | |
| Music | music/overview | Download, search, and stream tracks. |
| ID Generator | idgen/overview | Generating UUIDs, nanoids, snowflakes, and more. |
| AI Gateway | ai/overview | The Anthropic-compatible proxy, an OpenAI-compatible endpoint, and a read-only usage API. |
| S3 Storage | storage/overview | S3-compatible object storage. |
| Database | database/overview | Provisioning and managing databases with a bearer key. |
| Forms | forms/overview | The public form-fetch and submission API. |
| Snippets | snippets/overview | Creating pastes (CLI / ShareX) and reading them raw. |
| Profiles | profiles/overview | The public profile, presence, and contact endpoints. |
| Secrets | secrets/overview | The token-authed secrets pull API. |
| Status | status/overview | Public status feeds and the monitor-driven status API. |
| Login (OIDC) | login/overview | Sign in with Hep.gg: the full OAuth2 / OIDC flow. |
The full index, listing every twin and the shared conventions, is itself a twin: llms/overview.
Conventions
Every reference follows the same rules, so a model only has to learn them once:
- Base URL is
https://hep.ggunless the file names a per-app host (for examplesms.hep.gg,music.jakeypri.me,paste.hep.gg,forms.hep.gg). - Auth is per-app and stated at the top of each file: a bearer key, an API key, a username plus token, or OAuth tokens. Cookie-authenticated endpoints exist for the dashboard and are listed only for completeness, marked as not for programmatic use.
- Responses are JSON envelopes:
{ "ok": true, "data": ... }on success and{ "ok": false, "error": "<message>", "code"?: "<token>" }on failure. A few legacy endpoints, and the OpenAI- and Anthropic-shaped AI endpoints, sit outside the envelope and say so. - Timestamps are ISO 8601 UTC.
- Rate limits, where present, are documented per endpoint and return HTTP
429withRetry-After.
The twins are cached for a few minutes and are safe for crawlers and RAG indexers to fetch on a schedule.