Skip to main content
20% off 3 months · code LAUNCH20 · until 31 October

Changelog API

Publish release notes from code, a CLI, or an AI coding agent. Entries are Markdown, can be scheduled, and are served on a hosted page at launch.nordva.dev/log/<your-slug> or on your own domain.

Get an API key → Quickstart

What exists today

  • Entries are Markdown with a title, category and optional scheduled publish time. Scheduled entries go live on a one-minute cron.
  • Every project gets a hosted public changelog page. Builder projects can serve it from a custom domain with managed TLS.
  • Readers can subscribe by email; new published entries are delivered as email notifications with one-click unsubscribe.
  • A public JSON feed exists per project, and a script-tag widget renders the changelog inside your own site.
  • The MCP server exposes publishing, listing and archiving as tools, so Claude Code or Cursor can ship notes at the end of a session.
  • Entries can carry a cover image, images in the text, a button and custom labels. Images are links to files you host: nothing is uploaded, and every surface loads them lazily with no referrer.
  • An entry can be public, for signed-in users only, or (Builder) for a segment of people matched on their contact details and consents. Only public entries reach the hosted page, the feeds and subscriber email.
  • Readers react with a small set of reactions you choose, one per person per entry. Signed-in users keep read state across devices with the same signed user id as the notification bell.
  • One entry at a time can be announced as a modal, banner or toast, shown once per person, on Indie and up.
  • Each entry shows views and reactions; from Indie also readers, button clicks and feedback sent from it. On Builder, readers are compared with non-readers for upgrades and first payments in the 14 days after publishing: what went together, not proof of cause.
  • npx nordva changelog, or the MCP tool draft_changelog_from_commits, turns your commit messages into a draft entry. It never publishes.

Endpoints

POST /v1/changelog/entries Create or schedule an entry
GET /v1/changelog/entries List entries
PATCH /v1/changelog/entries/{id} Update a draft or scheduled entry
DELETE /v1/changelog/entries/{id} Archive an entry
GET /v1/changelog/entries/{id}/stats Views, readers, reactions, clicks, feedback
POST /v1/changelog/drafts Draft an entry from commit messages
POST /v1/changelog/labels Create a label
POST /v1/changelog/subscribers Subscribe an email address
GET /v1/changelog/widget/entries The widget's list for one reader
GET /public/changelog/{slug} Public feed, no auth

Full reference with request and response schemas: docs.nordva.dev. Every response uses the same envelope and stable error codes.

MCP tools

The same operations are available to Claude Code, Claude Desktop and Cursor through the Nordva MCP server at mcp.nordva.dev:

  • publish_changelog_entry
  • list_changelog_entries
  • archive_changelog_entry
  • draft_changelog_from_commits
  • get_changelog_entry_stats
  • create_changelog_label
  • register_custom_domain
  • get_custom_domain_status

Arguments, example prompts and client setup →

Questions

Can I publish from CI?
Yes. POST /v1/changelog/entries with a secret key. Requests accept an Idempotency-Key header, so a retried pipeline step will not create a duplicate entry.
Do readers need an account?
No. The hosted page and the JSON feed are public. Subscribing only requires an email address, confirmed by a one-click link.
Can I use my own domain?
On the Builder plan. Point a CNAME at widget.nordva.dev and register the hostname; certificates are issued automatically.