Advanced Features & Technical Guides Managing Customer Ideas via API

Whether you are building a custom feedback widget, integrating a feature request board into your app, or displaying a public roadmap, our API gives you complete control over the customer feedback loop.

This guide will walk you through the endpoints available for managing customer ideas, displaying roadmap items, and handling user votes.

API Authentication

All endpoints require standard Bearer token authentication. Make sure to include your API key in the headers of your requests.

How the feedback loop works

Before diving into the code, it helps to understand how ideas flow through the system. Customers submit ideas, which can then be promoted to your public roadmap where other users can vote on them.

flowchart LR
    A["Customer Idea"] -->|POST /tasks/ideas| B["Idea Backlog"]
    B -->|Approved by Admin| C["Public Roadmap"]
    C -->|GET /tasks/roadmap| D["User Dashboard"]
    D -->|POST /vote| C

While customers submit ideas via the API, promoting an idea to the public roadmap is typically done by your team via the administrative dashboard to prevent spam.

Implementing the ideas and roadmap API

Follow these steps to build a complete customer feedback experience in your application.

  1. 1

    Fetch configuration and statuses

    Before submitting ideas, it's a good practice to check your workspace's idea configuration and available item statuses. This ensures your UI matches your current settings.

    # Get idea submission configuration
    curl https://api.example.com/v1/tasks/ideas/config 
      -H "Authorization: Bearer YOUR_API_KEY"
    
    # Get available public statuses (e.g., Planned, In Progress, Done)
    curl https://api.example.com/v1/tasks/statuses 
      -H "Authorization: Bearer YOUR_API_KEY"
  2. 2

    Submit a customer idea

    When a user fills out your custom feedback form, send their suggestion using the Create Idea endpoint.

    curl -X POST https://api.example.com/v1/tasks/ideas 
      -H "Authorization: Bearer YOUR_API_KEY" 
      -H "Content-Type: application/json" 
      -d '{
        "title": "Dark mode support",
        "description": "It would be great to have a dark theme for night reading.",
        "customer_email": "user@example.com"
      }'
  3. 3

    Display the public roadmap

    To show users what you are currently working on, fetch the public roadmap. This endpoint returns all items that have been approved and categorized by status.

    curl https://api.example.com/v1/tasks/roadmap 
      -H "Authorization: Bearer YOUR_API_KEY"
  4. 4

    Handle user votes

    Allow users to upvote features they care about. You can add a vote to a specific roadmap item, or remove it if the user changes their mind.

    # Add a vote
    curl -X POST https://api.example.com/v1/tasks/items/item_123abc/vote 
      -H "Authorization: Bearer YOUR_API_KEY"
    
    # Remove a vote
    curl -X DELETE https://api.example.com/v1/tasks/items/item_123abc/vote 
      -H "Authorization: Bearer YOUR_API_KEY"

Keep users informed! You can also use the GET /tasks/changelogs endpoint to display a history of recently released features alongside your roadmap.

Endpoint Reference

Here is a quick summary of the endpoints available for managing ideas and roadmaps:

ActionMethodEndpointDescription
Create IdeaPOST/tasks/ideasSubmits a new customer idea to your backlog.
Get ConfigGET/tasks/ideas/configRetrieves your workspace's idea configuration.
Get RoadmapGET/tasks/roadmapLists all approved, public roadmap items.
Get StatusesGET/tasks/statusesLists available statuses (e.g., Planned, Shipped).
Add VotePOST/tasks/items/{item_id}/voteAdds a user's vote to a specific roadmap item.
Remove VoteDELETE/tasks/items/{item_id}/voteRemoves a user's vote from a roadmap item.

Managing Support Tickets

If you also need to handle direct customer support requests alongside feature ideas, the API provides a dedicated set of endpoints for managing support tickets within your organization:

ActionMethodEndpointDescription
List TicketsGET/organization/{organization_id}/support/ticketsRetrieves a list of support tickets for your organization.
Create TicketPOST/organization/{organization_id}/support/ticketsOpens a new support ticket.
Get TicketGET/organization/{organization_id}/support/tickets/{ticket_id}Retrieves details of a specific support ticket.
Add MessagePOST/organization/{organization_id}/support/tickets/{ticket_id}/messagesAdds a new message to an existing support ticket.

Frequently Asked Questions

Can I automatically publish ideas to the roadmap?

Currently, all ideas submitted via POST /tasks/ideas go to your private backlog first. An administrator must review and approve them before they appear on the public roadmap returned by GET /tasks/roadmap.

How is voting tracked?

Votes are tied to the authenticated user or the specific customer session making the API request. The API automatically prevents duplicate votes from the same user on a single item.

Are there rate limits on idea submissions?

Yes, to prevent spam, the POST /tasks/ideas endpoint is strictly rate-limited. We recommend implementing a CAPTCHA on your frontend if your submission form is entirely public.