Link GitHub issues
Link a post to the GitHub issues where the work happens. When an issue is closed, the post moves to Shipped and its voters get the status email. If the issue is reopened, the post goes back to In progress. You don't install a GitHub app or sign in with GitHub: you add one webhook to each repository.
Included in Solo and Pro. Only the project owner can create the webhook.
1. Create the endpoint in FigVote
Open your project, then Integrations, then GitHub, and click Create the GitHub endpoint. You get a payload URL and a secret. The secret is shown once, so keep the tab open until step 2 is done. If you lose it, click New secret and paste the new one in GitHub.
2. Add the webhook in GitHub
- In the repository, open Settings, then Webhooks, then Add webhook (GitHub's guide).
- Payload URL: the URL from FigVote.
- Content type: application/json.
- Secret: the secret from FigVote.
- Which events: "Let me select individual events", then tick Issues only.
GitHub sends a ping right away. The Integrations page then shows the time of the last delivery.
Several repositories can use the same URL and secret. An organization webhook works too.
3. Link issues to posts
In the dashboard, click GitHub on a post and paste the issue address, for example https://github.com/acme/app/issues/42. A post can be linked to up to 10 issues. Links are private unless you tick Show on the public post. Public links show up under the post as "Tracked in GitHub". Leave it off for private repositories.
What moves a post
- An issue closed as completed: the post moves to Shipped if it was Open, Planned or In progress. A post you closed by hand stays closed.
- A post linked to several issues ships when one closes and no other linked issue has been reopened since you linked it. An issue that GitHub has sent nothing about since you linked it doesn't hold the post back.
- An issue closed as "not planned" or as a duplicate: the post doesn't move.
- An issue reopened: a Shipped post goes back to In progress.
- Optional: tick "Also start a changelog draft" to get an unpublished changelog entry for each shipped post. Nothing is published without you.
Security and data
- Every delivery is checked against the X-Hub-Signature-256 header with your project's secret. Anything unsigned or signed with another secret is refused.
- The secret is stored encrypted and is never shown again.
- From each delivery FigVote keeps only the issue's state (open or closed) and its last update time. Titles, bodies and authors are not stored.
- A delivery that GitHub retries, or one that is sent again, changes nothing.