# Release Compass > Publish customer-facing changelogs from a CI JSON or Markdown payload — without giving anyone repository access. This origin serves the static web UI at `https://release-compass.app`. The HTTP API is `https://api.release-compass.app`. OpenAPI: `https://api.release-compass.app/api/docs`. Local defaults: web `http://localhost:3000`, API `http://localhost:3001`. Release Compass never installs a GitHub App and never reads repository contents. You can write a release in the dashboard. Any HTTP caller can also open a draft: CI, Jira/Linear automation, or a script. ## Pages - [Home](/): Product overview - [Docs](/docs/): How to generate a release (dashboard, Markdown, CI, API, MCP) - [FAQ](/faq/) - [Pricing](/pricing/) - [Public changelog](/changelog/): Open a project with `?slug={project-slug}` - [Request board](/roadmap/): Public feature/bugfix board with `?slug={project-slug}` (votes only via API/MCP) - [Privacy](/privacy/), [Terms](/terms/), [Imprint](/imprint/) - [Sign in](/login/) - [Create an account](/register/) ## Machine-readable changelog Replace `{slug}` with the project slug. - JSON: `GET https://api.release-compass.app/api/v1/public/changelogs/{slug}` - RSS: `GET https://api.release-compass.app/api/v1/public/changelogs/{slug}/rss.xml` - Atom: `GET https://api.release-compass.app/api/v1/public/changelogs/{slug}/atom.xml` Add `?includePrerelease=true` to include rc, beta, alpha, and canary releases. Add `?lang={locale}` for a translated customer copy (falls back to the project default locale). ## Create a release From the dashboard (JWT, admin or release manager): `POST https://api.release-compass.app/api/v1/projects/{projectId}/releases` with `{ version, title, body, channel? }`. This does not count toward the monthly API quota. From CI or an agent: `POST https://api.release-compass.app/api/v1/releases` with `Authorization: Bearer rc_live_…` Call this from GitHub Actions, GitLab CI, Jira/Linear automation, or any tool that can POST. - `Content-Type: application/json` — structured `{ version, title, body, url?, channel?, locale?, changes? }` - `Content-Type: text/markdown` or `text/x-markdown` — Markdown body; version from `X-Release-Version` or YAML front matter; locale from `X-Release-Locale` or front matter `locale` Unsupported types return 415. ## MCP `POST https://api.release-compass.app/api/v1/mcp` with `Authorization: Bearer rc_live_…` JSON-RPC 2.0. Tools: `create_release`, `list_releases`, `get_release`, `list_requests`, `create_request`, `vote_request`, `update_request_status`. Handshake (`initialize`, `tools/list`) does not count against the monthly quota. ## Requests `GET https://api.release-compass.app/api/v1/public/changelogs/{slug}/requests` when the board is public. API key: - `POST https://api.release-compass.app/api/v1/requests` `{ kind: "feature"|"bugfix", title, body?, requester? }` - `POST https://api.release-compass.app/api/v1/requests/{id}/votes` `{ voter }` — the only way to upvote besides MCP `vote_request` Project setting `requestRevealIdentities` controls whether requester and voter names are returned. Off by default. ## Subscribe `POST https://api.release-compass.app/api/v1/subscribers` with `{ "projectSlug", "email", "channels": ["stable"] }` Allowed channels: `stable`, `rc`, `beta`, `alpha`, `canary`. Subscribers only receive email for channels they selected, after confirming the link. ## Constraints - Static export: HTML changelogs live at `/changelog/?slug=` (not `/changelog/{slug}`) - Public HTML is the customer view; agents should prefer JSON/RSS/Atom for structured data - Coming soon (not available): Slack / Microsoft Teams posting, embed SDKs, SSO, AI customer-copy drafts