Back to all sites
API
Every file is static. It updates when the list changes. No key, no rate limit.
Endpoints
- /api/sites.json
- Every live site in one request: generated_at, license, attribution, count and a sites array of PublicSite objects.
- /api/sites/{id}.json
- One PublicSite object. The id is the slug used in /sites/{id}.
- /sites/{id}.md
- One site as Markdown: facts, what you need before you submit, and the steps.
- /llms.txt
- Short index for language models, with links to the JSON and Markdown of every site.
- /llms-full.txt
- Every site as Markdown in a single file, separated by `---`.
- /skill.md
- Agent skill: how to pick sites from the list and submit a product to them.
- /skill.zip
- The same skill as a zip archive, ready to install.
Fields
Each entry in sites, and each /api/sites/{id}.json response, is a PublicSite. Missing values are null.
| Field | Type | Meaning |
|---|---|---|
| id | string | Slug of the site, stable across builds. Used in /sites/{id}. |
| name | string | Display name. |
| domain | string | Host of the site, for example producthunt.com. |
| url | string | Address of the site. |
| submit_url | string | null | Page where you submit. null when unknown. |
| category | string | One of launch-platform, ai-directory, saas-directory, community, blog-platform, developer-platform, other. |
| price_type | string | One of free, paid, freemium, unknown. |
| price_note | string | null | Short note on cost, such as a price or a free tier limit. |
| link_type | string | One of dofollow, nofollow, unknown. |
| dr | number | null | Ahrefs Domain Rating, 0 to 100. null when unknown. |
| monthly_visits | number | null | Estimated visits per month. null when unknown. |
| needs_badge | boolean | null | Whether you must place a badge or link on your own site. null when unknown. |
| asks | { text: string, hard: boolean }[] | What the site asks in return. hard is true when it is required, false when optional. |
| lede | string | One-line description. |
| requirements | { must: string[], not_needed: string[] } | What you need before you submit, and what you can skip. |
| steps | string[] | How to submit, in order. |
| tip | string | null | Extra advice, up to 1,200 characters. May contain paragraph breaks. null when none. |
| rank | number | Position in the recommended order. Lower comes first. |
| verified_at | string | null | Date we last checked the site, YYYY-MM-DD. null when not checked yet. |
| updated_at | string | ISO 8601 time of the last change to the entry. |
Example
Free sites that don’t ask for a badge:
curl -s https://everybacklink.com/api/sites.json \
| jq -r '.sites[] | select(.price_type == "free" and .needs_badge == false) | "\(.name)\t\(.url)"'Licence
The data is licensed under CC BY-NC 4.0. You can copy and change it for non-commercial use. Credit everybacklink.com and link to everybacklink.com. For commercial use, ask us first: contact@everybacklink.com. The site code is MIT licensed.
Know a site we’re missing, or see a mistake? Suggest a site.