Skip to main content

Canny Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow, DB-CDC, Spark ETL, or Replication data flow that sends data to a Canny location.
canny_api.png

Canny

Create a Canny Destination

  1. Click the + icon on the Nexset that will be sent to the Canny destination, and select the Send to Destination option from the menu.

  2. Select the Canny connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Canny organization, and click Next; or, create a new Canny credential for use in this flow.

  3. In Nexla, Canny destinations can be created using pre-built endpoint templates, which expedite destination setup for common Canny endpoints. Each template is designed specifically for the corresponding Canny endpoint, making destination configuration easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    Canny destinations can also be configured manually, allowing you to send data to Canny endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Canny endpoints. Each template is designed specifically for the corresponding Canny endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

    Create Post

    This endpoint creates a new feedback post on a board in your Canny workspace. Use this endpoint to push feature requests, ideas, or other feedback captured in Nexla into Canny.

    • Each record in the Nexset is sent as a separate JSON request to create a post. Ensure your Nexset includes the required fields: authorID (the Canny user creating the post), boardID (the board the post belongs to), title, and details.
    • Use the List Boards and List Users source endpoints to retrieve valid board and author identifiers before sending data to this endpoint.

    The request body must contain valid JSON with all required fields. For complete details about required and optional fields, see the Canny API reference.

    Change Post Status

    This endpoint updates the status of an existing post, such as moving it to open, in progress, or complete. Use this endpoint to keep Canny post statuses in sync with the state of your work in other systems.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the post identifier and the target status value.
    • Use the List Posts source endpoint to retrieve valid post identifiers before sending data to this endpoint.

    Status values must match the statuses configured in your Canny workspace. For complete details, see the Canny API reference.

    Create Comment

    This endpoint creates a comment on a post in your Canny workspace. Use this endpoint to add context, updates, or responses to feedback posts from data flowing through Nexla.

    • Each record in the Nexset is sent as a separate JSON request to create a comment. Ensure your Nexset includes the required fields: authorID, postID, and value (the comment text).
    • Use the List Posts and List Users source endpoints to retrieve valid post and author identifiers before sending data to this endpoint.

    For complete details about required and optional fields, see the Canny API reference.

    Create Vote

    This endpoint creates a vote on a post on behalf of a user. Use this endpoint to register demand for feedback in Canny based on signals captured in other systems.

    • Each record in the Nexset is sent as a separate JSON request to create a vote. Ensure your Nexset includes the required fields: postID and voterID.
    • Use the List Posts and List Users source endpoints to retrieve valid post and voter identifiers before sending data to this endpoint.

    For complete details about required and optional fields, see the Canny API reference.

    Find or Create User

    This endpoint identifies an existing Canny user or creates a new one, performing an upsert by user identifier or email. Use this endpoint to keep your Canny user base in sync with users from your CRM, product database, or other systems.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required fields: userID, email, and name.
    • Because this endpoint performs an upsert, sending a record for an existing user updates that user rather than creating a duplicate.

    For complete details about required and optional fields, see the Canny API reference.

    Create or Update Company

    This endpoint creates or updates a company record in your Canny workspace. Use this endpoint to keep company data, such as account tier or monthly spend, in sync with your billing or CRM systems for account-level feedback analysis.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required fields: id and name.
    • Sending a record for an existing company identifier updates that company rather than creating a duplicate.

    For complete details about required and optional fields, including custom fields and monthly spend, see the Canny API reference.

    Create Tag

    This endpoint creates a new tag on a board in your Canny workspace. Use this endpoint to build or maintain your tag taxonomy programmatically from Nexla.

    • Each record in the Nexset is sent as a separate JSON request to create a tag. Ensure your Nexset includes the required fields: boardID and name.
    • Use the List Boards source endpoint to retrieve valid board identifiers before sending data to this endpoint.

    For complete details about required and optional fields, see the Canny API reference.

    Add Tag to Post

    This endpoint adds an existing tag to an existing post. Use this endpoint to categorize feedback posts in Canny based on classifications produced in your Nexla flows.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required fields: postID and tagID.
    • Use the List Posts and List Tags source endpoints to retrieve valid post and tag identifiers before sending data to this endpoint.

    For complete details about required and optional fields, see the Canny API reference.

    Delete Comment

    This endpoint deletes a comment from your Canny workspace by its identifier. Use this endpoint to remove comments that should no longer appear, such as those flagged or resolved in another system.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required field: commentID.
    • Use the List Comments source endpoint to retrieve valid comment identifiers before sending data to this endpoint.

    Deleting a comment is permanent and cannot be undone. For complete details, see the Canny API reference.

    Delete User

    This endpoint deletes a user from your Canny workspace. Use this endpoint to remove users as part of account offboarding or data privacy workflows driven from Nexla.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required field: userID.
    • Use the List Users source endpoint to retrieve valid user identifiers before sending data to this endpoint.

    Deleting a user is permanent and cannot be undone. For complete details, see the Canny API reference.

    Delete Vote

    This endpoint removes a vote from a post for a given user. Use this endpoint to retract demand signals in Canny when the corresponding signal is removed in another system.

    • Each record in the Nexset is sent as a separate JSON request. Ensure your Nexset includes the required fields: postID and voterID.
    • Use the List Posts and List Users source endpoints to retrieve valid post and voter identifiers before sending data to this endpoint.

    For complete details, see the Canny API reference.

Configure Manually

Canny destinations can be manually configured to send data to any valid Canny API endpoint.

Using manual configuration, you can also configure Nexla to automatically send the response received from the Canny API after each call to a new Nexla webhook data source.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Canny API from the Method pulldown menu. Canny write endpoints use the POST method.

Data Format

  1. Select the format in which the Nexset data will be sent to the Canny API from the Content Format pulldown menu. Nexla will automatically convert the data to the selected format for each API call. Canny API endpoints expect JSON in the request body.

API Endpoint URL

  1. Enter the URL of the Canny API endpoint to which you want to send the Nexset data in the URL field. Canny API endpoints follow the pattern https://canny.io/api/v1/{resource}/{action} (for example, https://canny.io/api/v1/posts/create).

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include any headers already present in the credentials. The x-api-key authentication header is handled automatically by Nexla based on your credential configuration.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Canny destination, select the attributes from the Exclude Attributes pulldown menu.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings. Some algorithms require additional settings—click on an algorithm to view instructions for configuring these settings.

Response Webhook

Optional

Nexla can automatically send the response received from the Canny API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call and any additional information returned after each call.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Canny API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.
  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing (Manual Configuration)

After all endpoint settings have been configured, Nexla can send a test payload to the Canny API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the Canny API using the current settings.

Save & Activate the Destination

  • Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Canny endpoint, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to the Canny endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.