# Canny (Actions) Destination

## Destination Info

* Accepts [Page](/docs/segment/connections/spec/page), [Alias](/docs/segment/connections/spec/alias), [Group](/docs/segment/connections/spec/group), [Identify](/docs/segment/connections/spec/identify), [Track](/docs/segment/connections/spec/track) calls.
* Refer to it as **Canny (Actions)** in the [Integrations object.](/docs/segment/guides/filtering-data/#filtering-with-the-integrations-object)
* This integration is **partner owned.** Please reach out to the partner's support for any issues.

[Canny](https://canny.io?utm_source=segmentio\&utm_medium=docs\&utm_campaign=partners) is a single place for all customer feedback. It saves you time managing all the feedback while keeping your customers in the loop. Let your customers post and vote on feedback from within your website or mobile app. You'll get an organized list of feedback that you can use to inform your roadmap.

Canny maintains this destination. For any issues with the destination, [contact the Canny Support team](mailto:segment-help@canny.io).

> \[!TIP]
>
> **Good to know**: This page is about the [Actions-framework](/docs/segment/connections/destinations/actions/) Canny Segment destination. There's also a page about the [non-Actions Canny destination](/docs/segment/connections/destinations/catalog/canny/). Both of these destinations receive data from Segment.

## Benefits of Canny (Actions) vs Canny Classic

Canny (Actions) provides the following benefit over the classic Canny destination:

* **Group Events**. Canny (Actions) supports group events and updates or adds properties to companies.

## Getting started

1. Go to your [Canny Admin Segment Settings](https://canny.io/redirect?to=%2Fadmin%2Fsettings%2Fsegment).
2. Install the integration to get your API key.
3. From the Segment web app, navigate to **Connections > Catalog**, then select the **Destinations** tab in the catalog.
4. Search for **Canny (Actions)** and select it.
5. Click **Configure Canny (Actions)**.
6. Select an existing Source to connect to Canny (Actions).
7. Enter your configuration settings.
8. Enter the Canny API key in the Canny (Actions) destination settings.
9. Enable the destination and save changes.

## Destination Settings

| Field   | Description                                                                       | Required | Type     |
| ------- | --------------------------------------------------------------------------------- | -------- | -------- |
| API Key | You can find your API Key in the Segment Integration page in your admin settings. | Yes      | password |

## Available Presets

Canny (Actions) has the following presets

| Preset Name                | Trigger                 | Default Action |
| -------------------------- | ----------------------- | -------------- |
| Create or update a Company | Event type = "group"    | Group          |
| Create or update a User    | Event type = "identify" | Identify       |

## Available Actions

Build your own Mappings. Combine supported [triggers](/docs/segment/connections/destinations/actions/#components-of-a-destination-action) with the following Canny-supported actions:

> \[!NOTE]
>
> Individual destination instances have support a maximum of 50 mappings.

* [Group](#group-5)
* [Identify](#identify-11)

### Group

Updates or adds properties to a company. Company is created if it does not exist.

Group is a **Cloud** action. The default Trigger is `type = "group"`

| Field            | Description                            | Required | Type   |
| ---------------- | -------------------------------------- | -------- | ------ |
| Group ID         | The unique identifier of the group.    | Yes      | STRING |
| Group Properties | Properties to set on the group profile | No       | OBJECT |
| Type             | The type of the event                  | Yes      | STRING |
| User ID          | The unique identifier of the user.     | No       | STRING |

### Identify

Create or update a user profile in Canny.

Identify is a **Cloud** action.

| Field           | Description                                      | Required | Type   |
| --------------- | ------------------------------------------------ | -------- | ------ |
| User ID         | A distinct ID of an identified (logged in) user. | Yes      | STRING |
| User Properties | Properties to set on the user profile            | No       | OBJECT |
| Type            | The type of the event                            | Yes      | STRING |

## Engage

You can send computed traits and audiences generated using [Engage](/docs/segment/engage) to this destination as a **user property**. To learn more about Engage, schedule a [demo](https://segment.com/contact/demo).

For user-property destinations, an [identify](/docs/segment/connections/spec/identify/) call is sent to the destination for each user being added and removed. The property name is the snake\_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Engage sends an Identify call with the property `order_completed_last_30days: true`. When the user no longer satisfies this condition (for example, it's been more than 30 days since their last order), Engage sets that value to `false`.

When you first create an audience, Engage sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

> \[!NOTE]
>
> Real-time audience syncs to Canny (Actions)  may take six or more hours for the initial sync to complete. Upon completion, a sync frequency of two to three hours is expected.

## Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

| Field   | Description                                                                       | Required | Type     |
| ------- | --------------------------------------------------------------------------------- | -------- | -------- |
| API Key | You can find your API Key in the Segment Integration page in your admin settings. | Yes      | password |
