Published releases, over HTTP
Use ReleaseView's versioned JSON API to list, search, and fetch a project's public release notes. It is designed for websites, scripts, support tools, and custom integrations.
Quickstart
Replace <slug> with the project slug shown under Project → Settings.
curl "https://www.releaseview.com/api/v1/projects/<slug>/releases"Requests require no authorization header. Only notes already published on the project's public changelog are returned.
Endpoints
| Method | Path | Purpose |
|---|---|---|
| GET | /releases | List published releases, newest first. |
| GET | /releases?q=dark+mode | Search versions, titles, summaries, and section text. |
| GET | /releases/latest | Fetch the most recently published note. |
| GET | /releases/<version> | Fetch one exact published version. |
curl --get "https://www.releaseview.com/api/v1/projects/<slug>/releases" \
--data-urlencode "q=dark mode"Response schema
List and search requests return releases as an array. The latest and version routes return the same object under release.
{
"project": {
"name": "Acme",
"logo_url": "https://example.com/logo.png",
"slug": "acme"
},
"release": {
"version": "v2.1.0",
"title": "Dark mode & faster sync",
"summary": "A more comfortable interface and quicker updates.",
"sections": [
{ "heading": "What's New", "items": ["Dark mode", "Faster sync"] }
],
"published_at": "2026-07-25T21:28:02Z",
"url": "https://www.releaseview.com/project/acme/v2.1.0"
}
}A project with no published notes returns an empty releases array from the list endpoint. Nullable fields may be returned as null.
Errors
| Status | Body | When |
|---|---|---|
| 404 | { "error": "Project not found" } | Unknown slug on the list route. |
| 404 | { "error": "No published releases found" } | No result for the latest route. |
| 404 | { "error": "Release not found" } | Unknown or unpublished version. |
| 500 | { "error": "Something went wrong" } | Unexpected server or database failure. |
Caching & limits
Successful responses include Cache-Control: public, s-maxage=60, stale-while-revalidate=300. Shared caches may serve a response for 60 seconds and may serve stale content for up to five minutes while refreshing it.
The API currently has no pagination or documented request quota. Treat that as an implementation detail, cache responses, and avoid aggressive polling. The API exposes published release notes only; commits, drafts, subscribers, and project settings are outside its contract.