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.
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| CWhile 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
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
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
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
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:
| Action | Method | Endpoint | Description |
|---|---|---|---|
| Create Idea | POST | /tasks/ideas | Submits a new customer idea to your backlog. |
| Get Config | GET | /tasks/ideas/config | Retrieves your workspace's idea configuration. |
| Get Roadmap | GET | /tasks/roadmap | Lists all approved, public roadmap items. |
| Get Statuses | GET | /tasks/statuses | Lists available statuses (e.g., Planned, Shipped). |
| Add Vote | POST | /tasks/items/{item_id}/vote | Adds a user's vote to a specific roadmap item. |
| Remove Vote | DELETE | /tasks/items/{item_id}/vote | Removes 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:
| Action | Method | Endpoint | Description |
|---|---|---|---|
| List Tickets | GET | /organization/{organization_id}/support/tickets | Retrieves a list of support tickets for your organization. |
| Create Ticket | POST | /organization/{organization_id}/support/tickets | Opens a new support ticket. |
| Get Ticket | GET | /organization/{organization_id}/support/tickets/{ticket_id} | Retrieves details of a specific support ticket. |
| Add Message | POST | /organization/{organization_id}/support/tickets/{ticket_id}/messages | Adds 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.