Integrations Policy
Last updated: 20 October 2026
Storyvote runs inside chat and video apps and connects to issue trackers. This policy sets the rules every integration follows, today's and any we add later, and lists each one: who turns it on, what it reads and writes, what we keep and for how long.
In short: integrations are optional and free, and nothing connects unless someone chooses it. Storyvote reads only what a room needs, writes back only estimates, keeps tokens encrypted on its server and deletes them when the room is disconnected or ends. What it writes into your tools stays there, under your organisation's control.
1. What this policy covers
- Chat and video apps (Slack, Discord, Telegram, Google Meet): Storyvote runs inside them, and they tell it who you are, so you don't type a name.
- Issue trackers (Jira Cloud, Trello, Linear, Asana): a room connects to one to import stories and to write their estimates back.
Importing and downloading stories as CSV happens in your browser and involves no third party, so it isn't an integration in this sense. This policy is part of our Terms of Service; the personal data involved is described in our Privacy Policy.
2. Rules every integration follows
- Optional. Nothing connects by itself. Only a room's host or a facilitator can connect it to a tracker, and they see which account it is connected as. A chat app is added by someone in your workspace, as its admin settings allow.
- Still no Storyvote account. A chat app tells Storyvote who you are. A tracker connection belongs to the room, not to a person, and ends with it.
- Least access. We ask for the narrowest permissions the provider offers for what the integration does. Where a provider offers only broader ones, we use them only for what section 7 lists.
- Reads only what you pick. To show you what to import, Storyvote reads the names of boards, projects or teams and the titles and keys of their items, and doesn't store them. It stores only the items you import, as stories: their title, key, ID and link. It reads no descriptions, attachments or assignees, and reads an item's comments only to find the estimate comment it wrote there before.
- Writes only estimates. Storyvote writes the final estimate, as one comment on each imported item ending with a link to storyvote.app (updated when the estimate changes) and, where the tracker has one, in its estimate field. It never changes an item's status, assignee or other fields, and never creates or deletes items.
- Tokens stay on our server, encrypted. Access tokens are encrypted with AES-256-GCM, under a key for each integration that isn't kept in the database. They never reach anyone's browser and are never written to our logs.
- Short-lived. A tracker connection is deleted when the room is disconnected or ends, and otherwise 30 days after it was last used, and revoked at the provider where the provider lets apps do so. Imported stories are deleted with the room.
- Used for nothing else. Data from an integration is used only to run the room. It is never used for advertising, never sold, never passed to anyone but the provider it came from, and never used to train AI models.
- Listed before it goes live. We add an integration only once it follows these rules, and list it in section 7, and so in our Privacy Policy, before anyone can use it. If an integration ever needs something these rules don't cover, we change this policy first.
3. Private and confidential project data
You may import private issues and other confidential project data from Jira, Trello, Linear, Asana or any tool you connect, and you may type them into a room, as long as you are allowed to. That means:
- your organisation's policies allow you to use the data with Storyvote, and its admin settings allow the integration (if they don't, ask your admin rather than working around it);
- everyone you invite may see it: anyone with the room's link (and password, if one is set) sees every story, including imported titles and links, and doesn't need an account in the tracker to do so. Links lead back to the tracker, where its own permissions apply;
- it isn't sensitive personal data (such as health data), passwords, keys or other secrets, or data that the law or a contract requires to be kept only in certified systems.
We treat room content as confidential: we use it only to run the room, and we look at it only when you ask us to (for example, to investigate a problem in your room), when we handle a report of illegal content, or when the law requires it. For sensitive sessions, set a room password and share the link only with the people who may see the stories.
4. What stays in your tools
Comments and estimates Storyvote writes to Jira, Trello, Linear or Asana, and the room cards and replies it posts in Slack, are part of those tools. They stay after the room ends or is disconnected, under the provider's terms and your organisation's settings, and you can edit or delete them there. "End and delete room" deletes everything Storyvote holds, not what it wrote into your tools.
5. Your responsibilities
- Connect only accounts and workspaces you may use, and follow the provider's terms and your organisation's policies.
- Storyvote can do in a tracker only what the connected account is allowed to do, so connect an account whose access suits the room.
- You're responsible for what you import, and for whom you share the room with.
- Storyvote and its integrations are free. A plan, seat or licence that a provider charges for is between you and that provider.
6. The providers
Each provider runs its own service, under its own terms and privacy policy, as an independent controller of the data it processes. We don't control their services and aren't responsible for them. An integration may stop working when a provider changes its service, its interface or its terms. We may change or remove an integration, for example to keep it secure or because a provider no longer allows it; where we can, we'll say so on the site in advance.
7. The integrations
Each integration, with the same details for every one. Ending a room removes everything listed as kept "with the room" at once; the rest goes as stated.
Jira Cloud
| Kind | Issue tracker, connected by a room |
|---|---|
| Provider | Atlassian (Atlassian Pty Ltd, Australia, and its affiliates), an independent controller under its own privacy policy |
| Who turns it on | The room's host or a facilitator, from the Stories panel's import window, by signing in on the provider's own page. Nobody else in the room can connect it or use the connection. |
| Permissions | Read projects and issues (read:jira-work), write to issues (write:jira-work, used only for the estimate), read the account's name (read:jira-user) and stay connected (offline_access). |
| Storyvote receives | To pick from: the Jira sites the sign-in allows, their projects, and the keys and summaries of their issues, read when the import window shows them and not stored. For each issue imported: its summary, key, ID, site ID and link. The account's name, asked when it is shown ("Connected as …") and never stored. |
| Storyvote writes there | Each imported issue's final estimate, in its story points field (where the issue has one that can be edited) and in one comment under the connected account (with the answers to the room's extra questions, such as AI tokens, and a link to storyvote.app), written when the host or a facilitator asks for it: one story at a time, or each estimate as soon as it is set (and again when it changes) once they turn that on (Storyvote reads the comments only to find its own). Nothing else. |
| Storyvote keeps | The room's access and refresh tokens, encrypted. The imported issues, as stories in the room. |
| For how long | The tokens until the room is disconnected or ends, and otherwise 30 days after the connection was last used. Imported stories are deleted with the room. |
| To stop it | Disconnect in the import window, or end the room, and Storyvote deletes the tokens. Atlassian gives apps no way to revoke a token, so to withdraw the permission itself, remove Storyvote from your Atlassian account's connected apps. Comments and estimates already written stay in the tool. |
Trello
| Kind | Issue tracker, connected by a room |
|---|---|
| Provider | Atlassian (Atlassian Pty Ltd, Australia, and its affiliates), an independent controller under its own privacy policy |
| Who turns it on | The room's host or a facilitator, from the Stories panel's import window, by signing in on the provider's own page. Nobody else in the room can connect it or use the connection. |
| Permissions | Read boards (read:board:trello), write to boards (write:board:trello, used only for the estimate comment), read the account's name (read:member:trello) and stay connected (offline_access). |
| Storyvote receives | To pick from: the boards, lists and card names the account can see, read when the import window shows them and not stored. For each card imported: its name, ID and link. The account's name, asked when it is shown and never stored. |
| Storyvote writes there | One comment on each imported card with its final estimate, the answers to the room's extra questions (such as AI tokens) and a link to storyvote.app, under the connected account, written when the host or a facilitator asks for it: one story at a time, or each estimate as soon as it is set (and again when it changes) once they turn that on (Storyvote reads the comments only to find its own). Nothing else. |
| Storyvote keeps | The room's access and refresh tokens, encrypted. The imported cards, as stories in the room. |
| For how long | The tokens until the room is disconnected or ends, and otherwise 30 days after the connection was last used. Imported stories are deleted with the room. |
| To stop it | Disconnect in the import window, or end the room, and Storyvote deletes the tokens. Atlassian gives apps no way to revoke a token, so to withdraw the permission itself, remove Storyvote from your Atlassian account's connected apps. Comments and estimates already written stay in the tool. |
Linear
| Kind | Issue tracker, connected by a room |
|---|---|
| Provider | Linear Orbit, Inc. (USA), an independent controller under its own privacy policy |
| Who turns it on | The room's host or a facilitator, from the Stories panel's import window, by signing in on the provider's own page. Nobody else in the room can connect it or use the connection. |
| Permissions | Read (read) and write (write). Linear offers no narrower permission for writing an estimate, so its write permission covers the workspace; Storyvote uses it only for what is listed here. |
| Storyvote receives | To pick from: the account's teams, and the identifiers and titles of their issues, read when the import window shows them and not stored. For each issue imported: its title, identifier, ID and link. The account's name, asked when it is shown and never stored. |
| Storyvote writes there | Each imported issue's final estimate in one comment under the connected account (with the answers to the room's extra questions, such as AI tokens, and a link to storyvote.app) and, where the team's estimate scale has the value, as the issue's estimate, written when the host or a facilitator asks for it: one story at a time, or each estimate as soon as it is set (and again when it changes) once they turn that on (Storyvote reads the comments only to find its own). Nothing else. |
| Storyvote keeps | The room's access and refresh tokens, encrypted. The imported issues, as stories in the room. |
| For how long | The tokens until the room is disconnected or ends, and otherwise 30 days after the connection was last used. Imported stories are deleted with the room. |
| To stop it | Disconnect in the import window, or end the room: Storyvote asks Linear to revoke the tokens, then deletes them. You can also revoke it in your Linear settings. Comments and estimates already written stay in Linear. |
Asana
| Kind | Issue tracker, connected by a room |
|---|---|
| Provider | Asana, Inc. (USA), an independent controller under its own privacy policy |
| Who turns it on | The room's host or a facilitator, from the Stories panel's import window, by signing in on the provider's own page. Nobody else in the room can connect it or use the connection. |
| Permissions | Read the account's name (users:read), its workspaces (workspaces:read), projects (projects:read) and tasks (tasks:read); read and write comments (stories:read, stories:write, used only for the estimate comment); and edit tasks and their custom fields (tasks:write, custom_fields:read, custom_fields:write, used only to find and fill in the story points field). Storyvote never creates or changes a field itself. |
| Storyvote receives | To pick from: the account's workspaces and projects, and the names and sections of their open tasks, read when the import window shows them and not stored. For each task imported: its name, ID and link. The account's name, asked when it is shown and never stored. Asana's sign-in also sends the account's ID, name and email address, which Storyvote ignores. |
| Storyvote writes there | Each imported task's final estimate in one comment under the connected account (with the answers to the room's extra questions, such as AI tokens, and a link to storyvote.app) and, where the task has a number field named Story points (or Points, or Estimate), in that field, written when the host or a facilitator asks for it: one story at a time, or each estimate as soon as it is set (and again when it changes) once they turn that on (Storyvote reads the task's comments only to find its own). Nothing else. |
| Storyvote keeps | The room's access and refresh tokens, encrypted. The imported tasks, as stories in the room. |
| For how long | The tokens until the room is disconnected or ends, and otherwise 30 days after the connection was last used. Imported stories are deleted with the room. |
| To stop it | Disconnect in the import window, or end the room: Storyvote asks Asana to revoke the tokens, then deletes them. You can also remove Storyvote in your Asana settings, under Apps. Comments and estimates already written stay in Asana. |
Slack
| Kind | Chat or video app Storyvote runs inside |
|---|---|
| Provider | Slack Technologies, LLC (USA), an independent controller under its own privacy policy |
| Who turns it on | A member of a workspace adds the app, as the workspace's settings allow. Anyone in the workspace can then type /storyvote in a channel. |
| Permissions | Answer the /storyvote command (commands), post messages (chat:write, and chat:write.public for public channels it hasn't joined), preview Storyvote links (links:read, links:write) and look up people's names (users:read). Not email addresses or messages. |
| Storyvote receives | The workspace's access token. For whoever types /storyvote or opens a room's card: their Slack user ID and display name. The ID of the channel a room was started in, and the Storyvote links in messages Slack asks us to preview. |
| Storyvote writes there | The room's card in that channel, previews of room links, and a reply only its creator sees; the cards are updated until the room ends. Nothing else. |
| Storyvote keeps | The workspace's ID and its encrypted access token. Your Slack user ID and name, in the rooms you join. The channel and message ID of each of a room's cards. |
| For how long | The token until the app is removed from the workspace. Card IDs until the room ends, and otherwise 30 days after the room last changed. Names and IDs with the room. |
| To stop it | Remove the app in the workspace's app settings: Slack tells us, and we delete the token. Messages and cards already posted stay in Slack, under your workspace's retention settings. |
Discord
| Kind | Chat or video app Storyvote runs inside |
|---|---|
| Provider | Discord Inc. (USA), an independent controller under its own privacy policy |
| Who turns it on | Anyone in a voice channel starts the Storyvote Activity. Discord asks each person once to let Storyvote see who they are. |
| Permissions | Your identity (identify). Not your email address, servers, friends or messages. |
| Storyvote receives | Your Discord user ID, username and display name, read once with a token Discord issues for it, which is not kept. Discord also relays all traffic between your device and Storyvote through its own servers. |
| Storyvote writes there | Nothing. |
| Storyvote keeps | Your Discord user ID and display name, in the rooms you join. The Activity session's ID, linked to its room's code. |
| For how long | The Activity's link 30 days after it was made. Names and IDs with the room. |
| To stop it | Leave the Activity. You can remove Storyvote's access in Discord's settings, under authorised apps. |
Telegram
| Kind | Chat or video app Storyvote runs inside |
|---|---|
| Provider | Telegram, an independent controller under its own privacy policy |
| Who turns it on | Anyone opens the Storyvote Mini App from Telegram. |
| Permissions | None to grant: Telegram sends its signed launch data when the Mini App opens. |
| Storyvote receives | Telegram's signed launch data, whose signature Storyvote checks: your Telegram user ID and name. Not your phone number, contacts or messages. |
| Storyvote writes there | Nothing. |
| Storyvote keeps | Your Telegram user ID and name, in the rooms you join. |
| For how long | With the room. |
| To stop it | Close the Mini App. Nothing about you is kept outside the rooms you joined. |
Google Meet
| Kind | Chat or video app Storyvote runs inside |
|---|---|
| Provider | Google LLC (USA), an independent controller under its own privacy policy |
| Who turns it on | Anyone in a call opens the add-on from Activities and starts it for everyone. |
| Permissions | None. The add-on doesn't sign you in and gets nothing from your Google account. |
| Storyvote receives | Your browser turns the meeting's ID into a one-way hash and sends only that hash, never the meeting's ID, code or participants. You type the name the others see. |
| Storyvote writes there | Nothing. |
| Storyvote keeps | The meeting's hash, linked to its room's code. Your typed name and a random ID, in the rooms you join, and in Meet's local storage on your device. |
| For how long | The meeting's link 30 days after it was made. Names and IDs with the room; on your device until you clear the site's data. |
| To stop it | Close the add-on, and clear the site's data in your browser to remove your name from the device. |
8. Problems and reports
If you think an integration read or wrote more than this policy says, or you want a room's connection removed at once, email hello@storyvote.app with "Integrations" in the subject and the room code, and we'll remove the connection as soon as we can. For security issues, see Security.
9. Changes to this policy
We'll publish any new version here and update the date at the top. A new integration is listed in section 7 before it becomes available, and we'll point out significant changes on the site.