Mission Board Webhooks
Mission Board Webhooks let you bring external data into Q by creating missions on a selected mission board from an external system.
This feature is currently in an early prototype stage. We’d love feedback on how you want to use it and what would make it more useful in real workflows.
Use Cases
- Contact form submissions - route inquiries from your website into a "Customer Feedback" mission board
- Bug reports - forward error tracking alerts (e.g., from Sentry) into a "Bug Triage" board
- Feature requests - collect requests from support tools and create tasks automatically
- CI/CD events - create tasks when deployments fail or tests break
How It Works
Create a webhook endpoint
In the Webhooks section, click New Webhook and give the endpoint a name.
Choose a target board
Select which mission board should receive incoming missions. If there are no mission boards yet, create one first.
Choose an authentication mode
You can create the endpoint in one of two modes:
Bearer Token (simple) - caller sends the secret in the Authorization header
HMAC-SHA256 (enterprise) - caller sends a Bearer token plus an HMAC signature for payload integrity
Copy the secret and URL
After creation, Q shows the webhook URL and secret. The secret is only shown once, so copy it immediately.
Send data to the endpoint
External tools can POST JSON to the webhook URL to create missions on the selected board.
curl -X POST https://heyq.com/api/webhooks/<endpoint-id> \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <your-secret>" \
-H "X-Idempotency-Key: $(uuidgen)" \
-d '{
"title": "New bug report",
"description": "Something is broken",
"priority": "must",
"tags": ["bug", "auth"]
}'Review deliveries
You can inspect recent webhook deliveries from the endpoint manager and revoke endpoints when needed.
Payload Format
The UI currently documents a simple JSON payload. At minimum, send a title.
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Title for the new mission |
description | string | No | Body text for the created mission |
priority | string | No | Priority value such as must |
tags | string[] | No | Optional tags included in the payload example |
What You Can Manage in Q
Once endpoints exist, the manager lets you:
- View active webhook endpoints
- See which mission board each endpoint targets
- See whether the endpoint uses
BearerorHMAC - Open delivery logs
- Revoke an endpoint
Security
Webhook endpoints use a generated secret. In Bearer mode, callers send it through the Authorization header. In HMAC mode, callers also provide a signature for payload integrity.
Keep your webhook secret secure. If it is exposed, revoke the endpoint and create a new one.
Because this is still an early prototype, feedback is especially valuable. If you want different payload fields, richer board mapping, or better delivery tooling, we’d be happy to hear from you.