Integrations
Don't check another dashboard. Send feedback notifications where your team already works. Get notified about new feedback, status changes, and comments without leaving your workflow.
Available Integrations
Notifications
Issue Tracking
Support & CRM
Automation
Developer Tools
How Integrations Work
Quackback uses an event-driven integration system:
Event Occurs → Event Dispatched → Integration Triggered → Notification Sent
Events
Integrations can respond to these events:
| Event | Description |
|---|---|
post.created | New feedback post submitted |
post.status_changed | Post status updated (e.g., Planned → Shipped) |
post.updated | Post title or content edited |
post.deleted | Post soft-deleted |
post.restored | Deleted post restored |
post.merged | Post merged into another post |
comment.created | New comment on a post |
comment.updated | Comment edited |
comment.deleted | Comment deleted |
Event Mappings
Configure which events trigger which integrations:
- Go to Admin → Settings → Integrations
- Select an integration
- Configure Event Mappings
- Choose which events to send
For example, only send to Slack when a post becomes "Planned".
Set up integrations
General Flow
- Navigate to Admin → Settings → Integrations
- Click on the integration you want to set up
- Follow the connection flow (usually OAuth)
- Configure notification settings
- Test the connection
- Enable the integration
Permissions Required
Only Admins can configure integrations.
Integration Status
Each integration shows its current status:
| Status | Meaning |
|---|---|
| Connected | Working normally |
| Paused | Temporarily disabled |
| Error | Connection issue, needs attention |
| Not Connected | Not yet set up |
Pause integrations
Temporarily disable an integration without disconnecting:
- Go to the integration settings
- Toggle Enabled off
- The integration pauses but credentials are preserved
Reconnect
If an integration shows errors:
- Check the error message
- Re-authenticate if tokens expired
- Verify the connected service is working
Security
OAuth Tokens
Integration OAuth tokens are:
- Encrypted at rest using AES-256-GCM with purpose-specific keys derived via HKDF
- Scoped to minimum required permissions
- Revocable from both Quackback and the connected service
Webhook Signing
Webhook deliveries are signed with HMAC-SHA256 so you can verify they came from Quackback. See Webhooks for details.
On post delete
When you delete a feedback post that has linked issues in an issue tracker (Linear, GitHub, Jira, etc.), you can archive or close those issues at the same time. The delete dialog shows a checkbox for each linked issue.
Configure the default
Each integration has an On post delete toggle in its settings page. When enabled, the checkbox for that integration's linked issues is pre-checked in the delete dialog. You can always override per-delete.
What happens
- The post is soft-deleted first -- this always succeeds
- Selected linked issues are archived or closed in parallel
- If an external API call fails, you'll see a warning toast -- the post is still deleted
- The link's status is updated to
archived,closed, orerrorin the database
Issue-tracking integrations archive or close linked issues -- they never hard-delete them. You can reopen or unarchive in the external tool if needed.
Best Practices
Start Simple
Begin with one integration. Add more as your workflow matures.
Map Relevant Events
Don't send every event to every channel. Be selective:
- New feedback > general notification
- Status changes > specific channels
- Comments > maybe skip or use digest
Monitor for Errors
Regularly check integration status. Failed notifications can mean:
- Expired tokens
- Removed channels
- Service outages
Troubleshooting
Notifications Not Sending
- Check integration status for errors
- Verify event mappings are configured
- Check the target channel/endpoint exists
- Review recent activity logs
Duplicate Notifications
- Check for multiple event mappings
- Verify you don't have duplicate integrations
- Review webhook retry settings
Connection Lost
- Tokens may have expired
- Re-authenticate the integration
- Check the third-party service status
Next Steps
- Slack - Set up Slack notifications
- Webhooks - Send events to any HTTP endpoint
- API Overview - Full REST API documentation