Skip to content
Swingback, home
Docs / Roadmap and changelog

Roadmap and changelog

The roadmap shows your customers what you plan, build and ship. The changelog announces what shipped, and tells the people who asked for it.

The roadmap#

The roadmap is your posts, grouped by status. There's nothing else to keep up to date: change a post's status, and it moves.

  • In the dashboard, Roadmap has a column for each of the six statuses, from every board, with a board and a tag filter. Columns list the most-voted posts first; Completed and Closed list the latest changes first. A card's menu moves its post to another status.
  • On your portal, the roadmap has three columns: Planned, In progress and Completed. Each customer sees only the posts they can see on the portal. It can also be a tab of your widget.

Moving a post tells the people who follow it. On a post's page, you can add a note to the change, which shows in the post's history.

Hide it, or keep a board off it#

  • To hide the portal's roadmap, set Roadmap to Hidden under Settings → General. The portal and the widget drop it, and your team still sees it, marked as hidden. In the API, it's the workspace's portal_roadmap: shown or hidden.
  • To keep one board's posts off the portal's roadmap, such as a board of bug reports, uncheck On the roadmap in the board's settings under Boards. In the API, it's the board's roadmap flag.

The changelog#

Under Changelog, New entry starts a draft:

  • a title, a plain-text summary of up to 500 characters for lists, the feed and emails, and a body in Markdown;
  • a cover image;
  • tags: changelog tags, which you create under Tags;
  • authors: team members who sign the entry, you by default;
  • linked posts: the posts it delivers, up to 20, in order;
  • Publish quietly: the entry lists on the portal like the others, but never shows as new, stays out of the feed, and nobody is told.

Linking a post doesn't change its status: move it to Completed yourself.

Publish or schedule#

The entry's page has the rest:

  • Publish now puts it on the portal and in the feed at once.
  • Schedule publishes it by itself at a date and time in your workspace's time zone, set under Settings → General. It goes out within a minute of that time, up to a year ahead.
  • Back to draft unschedules it, or takes it off the portal.
  • Move to trash keeps it for 30 days, and Restore brings it back as it was.

An entry's address follows its title until it's first published. Then it never changes, even if you edit the title, so links to it keep working.

What readers see#

The portal's Changelog lists published entries, newest first, with a filter for each tag. An entry shows its linked posts, but only those the reader can see; a post merged into another shows as that one. The portal's navigation counts the entries published since the reader last opened the changelog.

The RSS feed is at /changelog/rss.xml on your portal, with the latest entries, and the changelog page links to it.

Who hears about it#

The first time an entry is published, unless quietly:

  • customers subscribed to the changelog hear about it. They subscribe on the portal, in their account's email choices;
  • so do the customers who wrote, voted for or commented on its linked posts, when they can see them.

They see it in the portal's notifications, and by email about a minute later, unless they turned those emails off. Publishing an entry again after taking it back to draft tells nobody again. The weekly digest also lists the week's entries. See Notifications.

Draft with AI#

In a draft's editor, Draft with AI writes a title, a summary and a body from the linked posts and your notes. You read the draft, and Use this draft puts it in the editor; nothing is saved or published until you do. Each draft counts as one AI draft of your plan, and the linked posts and your notes go to Anthropic to write it. See AI features.

With the API#

POST /v1/workspaces/{workspace_id}/changelog writes a draft, with title, summary, body_md, tag_ids, post_ids, author_ids (team members' acct_... ids) and whisper. An entry made with an API key has the authors it names, or none.

Then PUT .../changelog/{changelog_entry_id}/publication publishes it now, or schedules it with publish_at, an RFC 3339 time:

curl -X PUT https://api.swingback.dev/v1/workspaces/$SWINGBACK_WORKSPACE_ID/changelog/entry_01h455vb4pex5vsknk084sn02q/publication \
  -H "Authorization: Bearer $SWINGBACK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "publish_at": "2026-10-06T07:00:00Z" }'

DELETE on the same address takes the entry back to draft.