Skip to main content
The Canny integration captures posts and comments from your Canny feedback boards in real time. Every feature request, bug report, and the comment thread beneath it flows into Modem, where it is grouped into topics, classified by type, and linked to the people and companies behind it.
Canny is capture-only and read-only. Modem ingests posts, comments, and vote counts; it never writes anything back to Canny, and the Modem Agent has no tools for taking action inside Canny. You query captured Canny feedback from the Modem Agent on the web, where the agent can still act on what it finds in your other connected tools.

How it works

Modem connects to Canny with your workspace API key. When you paste the key, Modem validates it by listing your boards, identifies the workspace from a board URL, and stores the key encrypted. Canny has no API for registering webhooks, so the second half of setup is manual: Modem shows you a webhook URL for your connection, and you paste it into Canny. From then on Canny pushes post and comment activity to Modem as it happens. Each delivery is signed with your API key and time-stamped, and Modem rejects deliveries that fail verification or arrive more than five minutes late. API keys in Canny don’t expire, so there’s no re-authorization cycle. Capture is webhook-based and real-time: a new post typically shows up in Modem within a few minutes.

Prerequisites

  • Owner or admin role in your Modem organization, to connect and manage the integration
  • Admin access to your Canny workspace, to copy the API key and add a webhook
  • A Canny plan that includes API and webhook access
  • At least one board in the workspace (Modem uses a board URL to identify the workspace)

Setup

1

Copy your Canny API key

In your Canny admin, go to SettingsAPI (https://<your-workspace>.canny.io/admin/settings/api) and copy the workspace API key. One key covers every board in the workspace.
2

Paste the key into Modem

Go to SettingsIntegrationsCanny in your Modem dashboard, paste the key, and click Connect Canny. Modem verifies it against your boards and encrypts it before storing.
3

Add Modem's webhook in Canny

Once connected, the settings page shows a Finish setup in Canny card with your webhook URL. Copy it, open SettingsAPI & Webhooks in Canny, add a webhook with that URL, and save. See Adding the Webhook below.
4

Optionally run a backfill

Import your workspace’s existing posts so past feedback shows up too. See Historical Backfill below.

Adding the Webhook

Connecting stores your API key, but nothing arrives until the webhook is in place. Until then the integration shows as connected, and hovering over the status explains that no webhook has arrived yet. The webhook URL looks like this, where the trailing number is the id of your connection:
  • The URL belongs to this connection. Reconnecting the same Canny workspace, for example after rotating the API key, keeps it working.
  • Connecting a different Canny workspace issues a new URL that has to be pasted into that workspace’s settings.
  • Anyone who can view the settings page can copy the URL, so a team member can hand it to whoever administers Canny.
If your boards are served from a custom domain rather than <workspace>.canny.io, Modem can’t link straight to your Canny admin. Open your Canny admin directly and find SettingsAPI & Webhooks there.

What Gets Captured

All boards in the workspace are captured. There is no board picker: each board becomes its own channel in Modem, and a board you create later starts flowing as soon as Canny sends its first event.

Posts and comments

Each Canny post is captured as one conversation. The post itself, with its title and body, is the opening message, and each comment is a reply in the same conversation. Screenshots and other images attached to a post or comment are captured too, and any text in them is extracted for analysis. Modem reacts to these Canny events: Deletions, tag changes, and Jira links are ignored. A post or comment deleted in Canny stays in Modem.

Post status

Canny’s default statuses are mapped onto Modem’s conversation states: Custom statuses you’ve added to a board are kept as-is on the post but don’t map to a Modem state.

Votes

A post’s vote count is the demand signal a feedback board exists to carry, so Modem records it as an upvote reaction on the post’s opening message. The count always reflects the post’s current score in Canny, and it updates whenever a vote is added or removed.
A post whose score drops to zero keeps its last recorded count until the next vote arrives. This is a limitation of how reactions are stored and will correct itself on the next vote.

Authors

Post and comment authors are captured with their Canny name and, when Canny has one, their email address, so they resolve to Modem people. Canny’s admin flag is preserved, which lets Modem tell your own team’s replies apart from end-user feedback. Posts from deleted or anonymous Canny users are captured without an author.

Historical Backfill

Connecting only captures activity from that point forward. To pull in what your workspace already has, run the optional backfill from SettingsIntegrationsCanny. It imports your full post history — no date cutoff — up to 10,000 posts across all boards, along with up to 500 comments per post. The backfill runs in the background and doesn’t block real-time capture. Canny’s API is rate-limited, so a busy workspace can take a while. The card shows progress, and you can run it again if it fails; re-running won’t duplicate posts.

Analyzing Canny Feedback

Once posts are flowing, ask the Modem Agent about them from the web dashboard like any other source.

Troubleshooting

Copy the key again from your Canny admin under SettingsAPI and make sure you’re pasting the whole value. If the key was regenerated in Canny, the old one no longer works.
Modem identifies your workspace from a board’s URL, and a workspace with no boards has nothing to capture. Create a board in Canny, then connect again.
Check the Finish setup in Canny card on the Canny settings page. Nothing arrives until the webhook URL shown there is added in Canny under SettingsAPI & Webhooks. Once it is, allow a few minutes for delivery and processing. Modem only captures activity that happens after the webhook is in place; run the backfill for the posts you already have.
Canny signs webhook deliveries with the API key, so after a regeneration Modem can’t verify them and stops accepting posts. Reconnect on the Canny settings page with the new key. Because it’s the same workspace, your webhook URL stays the same and nothing needs to change in Canny.
The backfill imports your full post history, but it stops at 10,000 posts across all boards, so a very large workspace won’t be imported in its entirety. Each post is capped at 500 comments. If a run failed, the card shows the error and a Run again button. If it still looks wrong, contact support@modem.dev.
Authors are matched to Modem people by email address. Canny only includes an email for identified users, so anonymous or deleted users won’t be linked.

Disconnecting

To disconnect Canny:
  1. Go to SettingsIntegrationsCanny
  2. Click Disconnect and confirm
  3. In Canny, delete the Modem webhook under SettingsAPI & Webhooks
Modem stops accepting deliveries from the workspace immediately. Canny has no API for removing webhooks, so the third step is yours; until you do it, Canny keeps sending deliveries that Modem rejects. Historical data remains in Modem after disconnecting.

The Modem Agent

Query and act on your captured Canny feedback from the web.

Topics

See how posts and comments are grouped into themes and classified.

Companies & People

Understand how Canny authors are linked into unified profiles.

All Integrations

Browse every data source and agent tool.