# Canny

Canny is a customer feedback management platform that helps teams collect, analyze, and prioritize user feedback to build better products.

- **Category:** product management
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 25
- **Triggers:** 0
- **Slug:** `CANNY`
- **Version:** 20260429_00

## Tools

### Add Post Tag

**Slug:** `CANNY_ADD_POST_TAG`

Tool to add a tag to a specific post. Use when you need to categorize or group content by applying an existing tag.

### Change Post Status

**Slug:** `CANNY_CHANGE_POST_STATUS`

Tool to change a post's status. Use when you need to update a post's workflow stage and optionally notify voters.

### Create Changelog Entry

**Slug:** `CANNY_CREATE_CHANGELOG_ENTRY`

Tool to create and optionally publish a new changelog entry. Use when you need to add a product update record, control publish timing, and notify users. Example: "Create changelog entry titled 'Version 1.2' with details '...' and publish immediately.".

### Create Comment

**Slug:** `CANNY_CREATE_COMMENT`

Tool to create a new comment on a post. Use when you have the authorID and postID and want to submit feedback or replies.

### Create or Update User

**Slug:** `CANNY_CREATE_OR_UPDATE_USER`

Creates a new user or updates an existing user in Canny. If a user with the given identifier (email, userID, or id) already exists, their profile is updated; otherwise, a new user is created. IMPORTANT: At least one of 'email', 'userID', or 'id' must be provided along with 'name'. Use cases: - Sync users from your application to Canny - Update user profiles (name, avatar, custom fields) - Associate users with companies for segmentation Example: Create user with email: {"name": "Jane Doe", "email": "jane@example.com"} Example: Sync app user: {"name": "John Smith", "userID": "app_user_123", "email": "john@example.com"}

### Create Post

**Slug:** `CANNY_CREATE_POST`

Tool to create a new post (feature request or feedback) on a Canny board. Use this action when you need to submit new feedback or feature requests to a board. Requires a valid boardID (from list_boards) and authorID (from create_or_update_user or list_users).

### Create Tag

**Slug:** `CANNY_CREATE_TAG`

Tool to create a new tag. Use when you have the boardID and tag name and need to categorize posts.

### Create Vote

**Slug:** `CANNY_CREATE_VOTE`

Tool to create a vote for a post. Use when you need to record or migrate a user's vote on a post, optionally setting priority or original creation time. Example: Create a vote for postID abc123 with voterID user_456.

### Delete Comment

**Slug:** `CANNY_DELETE_COMMENT`

Tool to delete a comment. Use when moderation is required to remove a specific comment by its id. Example: "Delete the comment with ID 553c3ef8b8cdcd1501ba1238."

### Delete Post

**Slug:** `CANNY_DELETE_POST`

Tool to delete a post. Use when you need to permanently remove a post by its id. Example: "Delete the post with ID 553c3ef8b8cdcd1501ba1238."

### Delete User

**Slug:** `CANNY_DELETE_USER`

Tool to delete a user and their comments and votes. Use when you need to fully remove a user’s account and all associated data (e.g., GDPR compliance).

### Delete Vote

**Slug:** `CANNY_DELETE_VOTE`

Tool to delete a vote. Use when you need to remove a user's vote from a specific post by its id. Example: "Delete the vote from postID abc123 for voterID user_456."

### List Boards

**Slug:** `CANNY_LIST_BOARDS`

Tool to list all boards. Use when you need to retrieve every board for your company after authentication.

### List Categories

**Slug:** `CANNY_LIST_CATEGORIES`

Tool to list categories. Use when fetching categories for a specific board by its ID.

### List Comments

**Slug:** `CANNY_LIST_COMMENTS`

Retrieves a paginated list of comments from Canny. Comments can be filtered by board, post, author, or company. Use this action to: - Get all comments across your Canny instance - Find comments on a specific post (using postID) - List comments from a specific board (using boardID) - See comments by a specific user (using authorID) - Track feedback from a company's users (using companyID) Returns comments ordered by creation date (newest first). Use 'limit' and 'skip' for pagination.

### List Companies

**Slug:** `CANNY_LIST_COMPANIES`

Tool to list companies associated with your Canny account. Use after authentication to retrieve companies with pagination support.

### List Opportunities

**Slug:** `CANNY_LIST_OPPORTUNITIES`

Tool to list opportunities linked to posts. Use when you need to fetch customer opportunities synced from CRM.

### List Posts

**Slug:** `CANNY_LIST_POSTS`

Tool to list posts with various filters. Use after selecting a board or to search/filter posts.

### List Tags

**Slug:** `CANNY_LIST_TAGS`

Tool to list tags. Use when fetching tags optionally filtered by board ID and handling pagination.

### List Users

**Slug:** `CANNY_LIST_USERS`

List all end-users in your Canny workspace with pagination support. Use this tool to: - Fetch users from your Canny workspace - Paginate through large user lists using cursor-based pagination - Get user details including email, name, admin status, and custom fields Returns a paginated list of users. Use the returned cursor to fetch subsequent pages.

### List Votes

**Slug:** `CANNY_LIST_VOTES`

Retrieve votes from Canny with optional filtering by board, post, or voter. Use this action to: - Get all votes on a specific post (filter by postID) - Get all votes by a specific user (filter by voterID) - Get all votes on posts in a board (filter by boardID) - List all votes across the account (no filters) Results are paginated - use 'limit' and 'skip' parameters to navigate through pages. Check 'hasMore' in the response to determine if more results are available.

### Retrieve Board

**Slug:** `CANNY_RETRIEVE_BOARD`

Tool to retrieve details of a board by its ID. Use when you need metadata for a specific board.

### Retrieve Tag

**Slug:** `CANNY_RETRIEVE_TAG`

Tool to retrieve details of a tag by its ID. Use after obtaining a valid tag ID.

### Retrieve User

**Slug:** `CANNY_RETRIEVE_USER`

Tool to retrieve user details by Canny user ID, app user ID, or email. Use when you have exactly one identifier and need full user information. Example: "Retrieve user with email user@example.com"

### Update Post

**Slug:** `CANNY_UPDATE_POST`

Tool to update post details. Use when you need to change a post's title, details, ETA, images, or custom fields.
