Integrations
Feedback should land where your team already works. Every accepted submission can become an Asana task or a signed webhook POST to your own endpoint — no polling, no export step.
How delivery works
When a visitor submits feedback and StageWhisper accepts it, a background delivery job runs for
each active integration on your workspace. Asana integrations create a task in the project you
chose; webhook integrations POST the submission as signed JSON. Each integration keeps its own
delivery history in the dashboard, so you can see exactly what was sent, when, and whether the
destination accepted it. Delivery is at-least-once: if a
destination accepts a delivery but the response is lost to a timeout, the retry can create a duplicate
task or POST — dedupe on the submission link (Asana) or X-SW-Delivery-Id (webhooks) if that matters to you.
- Free — no integrations.
- Starter — one active integration: Asana or a webhook.
- Pro — unlimited integrations, including several Asana projects.
Connect Asana
Before you start
You need to be a workspace owner or admin in StageWhisper, and you need an Asana account that can see the project you want tasks created in. The Asana account does not have to be an Asana admin.
Authorize StageWhisper
- Open Integrations in your StageWhisper dashboard and press Connect Asana.
- Asana shows its consent screen listing what StageWhisper is asking for. Press Allow.
- You return to StageWhisper with a new, not-yet-active Asana connection.
Pressing Deny instead returns you to StageWhisper with the message “Asana authorization was canceled.” Nothing is stored.
Choose a workspace and project
On the connection page, pick an Asana workspace, then a project inside it — the project list loads from Asana as you choose. Tick Active and press Save integration. StageWhisper confirms with Asana that the project really belongs to the chosen workspace before it activates delivery.
Test the connection
Press Test connection on the connection page at any time. It checks your authorization with Asana live and reports one of these outcomes:
- Verified, project reachable — StageWhisper can see the chosen project in the chosen workspace. Delivery will work.
- Verified, choose a project — authorization works, but you have not picked a workspace and project yet.
- Project no longer reachable — authorization works, but the project was deleted, moved to another workspace, or is hidden from the authorizing account. Choose another project.
- Authorization expired — Asana no longer honors the stored authorization. Press Reconnect Asana.
- Temporarily unavailable — Asana did not answer in time. Nothing changed on your side; try again shortly.
- Unexpected response — Asana answered with something StageWhisper could not interpret. Try again; if it persists, contact support.
What StageWhisper can access
StageWhisper asks Asana for exactly three permissions:
| Permission | Used for |
|---|---|
tasks:write |
Creating the task for each accepted submission in your chosen project. |
projects:read |
Listing projects in the workspace picker and confirming the chosen project is still reachable. |
workspaces:read |
Listing the workspaces your Asana account can see. |
StageWhisper never sees your Asana password; it stores encrypted OAuth tokens that you can revoke by disconnecting here or from Asana's Apps settings.
If your Asana admin restricts apps
Disconnect or reconnect
Disconnect clears the stored Asana tokens and stops delivery, but keeps the connection's delivery history and your workspace and project selection. If Asana revokes access on its side — someone removed the app, or the authorizing account left the workspace — the connection's status changes to Reconnect required. In both cases, Reconnect Asana runs the consent flow again and reuses the same connection, so history and settings stay attached.
Signed webhooks
Prefer your own endpoint? Add a webhook integration with a public HTTPS URL. StageWhisper rejects localhost, private networks, redirects, fragments, credentials, and non-HTTPS URLs.
- Each delivery is a JSON POST carrying
X-SW-Delivery-Id,X-SW-Timestamp, andX-SW-Signature. X-SW-Signatureissha256=<HMAC-SHA256 of "<X-SW-Timestamp>.<body>">, keyed with the per-integration signing secret shown on the connection page. Verify it before trusting the payload.- Your endpoint has a 5-second window to answer with a 2xx. Slow or failing endpoints are retried with exponential backoff, up to 5 attempts, before the delivery is marked failed.
- Rotate the signing secret from the connection page: stage a new secret, install it, then activate it. StageWhisper signs with both secrets for 24 hours so nothing is dropped during the switch.
Troubleshooting
Connect Asana is disabled
A disabled button with “Asana isn't available in this environment yet.” means the StageWhisper environment you are using has not been connected to Asana by its operators. On a staging or self-hosted instance, ask whoever runs it; on stagewhisper.co, contact support. An “Upgrade or disconnect another integration” message is different — that is your plan's integration limit.
I pressed Allow but landed back with an error
“Asana rejected the authorization request” means Asana refused the handshake rather than you declining it. Try again once; if it repeats, contact support with the time it happened. If you see an Asana-branded error page and never return to StageWhisper, the app registration is misconfigured on our side — also worth a support note.
Status says Reconnect required
Asana stopped honoring the stored authorization. Press Reconnect Asana; your project selection and delivery history are kept.
Test connection says the project is no longer reachable
The project was deleted, archived out of reach, moved to a different workspace, or the authorizing Asana account lost access to it. Pick another project (or the same one in its new workspace) and save.
My tasks aren't appearing
- Check the connection's Delivery history — each attempt and its result is listed there.
- Make sure the connection is Active. On Starter, only one integration can be active at a time.
- Check your plan status in Billing: a past-due or canceled workspace pauses delivery until it is reactivated.
- Press Test connection to rule out an expired authorization or an unreachable project.