Chat2Flow Privacy Policy
Last updated: October 6, 2026
This policy explains how Chat2Flow (the “Extension”) handles information, as well as how its public privacy-policy website and support contact handle information. Chat2Flow is a bring-your-own-key Chrome extension that turns user instructions into editable diagrams.
1. Information handled
The Extension processes course context, diagram instructions, chat messages, generated DiagramIR structures and draw.io-compatible XML, model and interface settings, and a user-supplied OpenAI API key. Local chat records also contain chat titles, locally generated identifiers, and creation and update times. If you select “Don't show again,” a minimal consent record containing only the current privacy-policy version is saved.
The Extension does not read your browsing history or content from webpages. It does not automatically collect your name or email address for the developer. However, text you enter may contain personal information. Do not include passwords, identity documents, payment details, health information, or other sensitive data in course context, chats, or diagrams. Enter your API key and encryption password only in their dedicated Settings fields.
2. Local storage and API key security
Course context, chats, diagrams, and settings are stored on your device using Chrome extension storage. These records are not encrypted by the Extension. Encryption described below applies only to the optionally saved API key, not to all locally stored data. The developer does not operate a separate server or database that receives your chat or diagram content.
By default, the API key is kept in Chrome session storage rather than persisted to disk by the Extension. It remains available to the Extension during that Chrome session. When you select “Save API key on this device,” the Extension uses PBKDF2-SHA-256 to derive an encryption key from a password you choose and uses AES-256-GCM to encrypt the API key before saving it locally.
The encryption password is a separate password you enter in the Extension, not your operating-system login password. It is not saved or sent to a server and cannot be recovered by the developer. If you forget it, delete the saved key and enter your API key again. While in use, including after unlocking, the API key is available in plaintext to the Extension for authentication.
3. Data sent to OpenAI
When you request a diagram, the Extension sends your current instruction, course context, recent chat history, the previous diagram structure when applicable, and required system instructions directly to the OpenAI API over HTTPS. Your API key is sent in the authorization header. “Test connection” sends your API key directly to OpenAI and requests the model list. These requests do not pass through a developer-operated server.
OpenAI states that API data is not used to train or improve its models unless the account holder explicitly opts in. Default abuse-monitoring logs may contain prompts, responses, and related metadata and are generally retained for up to 30 days, with exceptions described by OpenAI. OpenAI controls its own processing and retention; review the OpenAI API data controls and OpenAI Privacy Policy for current details.
Connecting to third-party services necessarily exposes network information, such as your IP address, to those services. This is separate from developer-operated collection or analytics.
4. Data provided to diagrams.net
Generated diagram XML is provided through browser messaging to the embedded editor at embed.diagrams.net for display and editing. This provides the XML to third-party editor code running in your browser; it does not itself mean that the Extension uploads the XML to a diagrams.net storage server.
Only when you choose to open the external editor does the Extension open app.diagrams.net with the diagram XML in the URL fragment and the diagram title in the URL query. Loading either editor connects your browser to that service. Features you use in the external editor, including saving or exporting through third-party services, are governed by that service's own terms.
No API key or encryption password is provided to diagrams.net. Review the draw.io privacy policy for the editor's data practices.
5. Use, sharing, and Limited Use
Extension data is used only to provide its disclosed diagram-generation features and related local settings. Diagram-generation data is provided to OpenAI and diagrams.net as described above. Separate website-hosting and support-email processing is described in Sections 8 and 9.
The developer does not sell or rent user data, use it for advertising, transfer it to data brokers, or use it for creditworthiness or lending. The Extension contains no developer-operated analytics or advertising trackers.
The Extension's use and transfer of user information adhere to the Chrome Web Store User Data Policy, including the Limited Use requirements, and are limited to its disclosed single purpose. The developer has no remote access through the Extension to your local chats or diagrams and does not routinely read them. If you voluntarily share specific content for support, it is used to address your request, not for advertising or unrelated purposes.
6. Retention, deletion, and choices
Local records remain until you remove them or uninstall the Extension. The following controls have different effects:
- Clear chat: removes messages and the generated diagram from the current chat, but keeps that chat's course context.
- Delete a chat: removes that chat's local record, including its course context and diagram. The last remaining chat cannot be deleted with this control; use Clear chat for its messages and diagram.
- Edit course context: replaces the current chat's course context and updates the default context for future chats. Other chats may still contain their own earlier context.
- Settings → Delete API key: removes the session key and any locally saved encrypted key. It does not revoke the key in your OpenAI account; revoke it there if necessary.
- Uninstall: removes the Extension's local storage, including settings, chat records, saved keys, and the saved consent record. Downloaded files and copies placed on the clipboard or saved in external services are not removed by uninstalling.
Deleting local data does not delete logs or other records already held by OpenAI, diagrams.net, GitHub, or your email provider. Their retention and deletion options are governed by their own policies and account settings.
The privacy notice appears before feature data is processed unless a valid consent record exists. “Agree and continue” is the consent action. If “Don't show again” is unchecked, consent lasts only for the current Extension page lifecycle and is not persisted. If checked, only the current consent-policy version is stored locally. A change to that version requires consent again. “Not now” blocks feature use without saving new feature input or calling OpenAI.
7. Security
Network requests initiated by the Extension use HTTPS. API credentials are sent to OpenAI for authentication, not to the developer, diagrams.net, or the privacy-policy website. The optional API-key encryption does not protect the entire Chrome profile or encrypt your chats and diagrams.
No storage or transmission method is completely secure. Use a dedicated OpenAI project key with appropriate permissions and spending limits, protect your device and Chrome profile, and do not send real API keys or encryption passwords in support messages.
8. Privacy-policy website hosting
The public version of this policy is hosted using GitHub Pages. GitHub states that it logs and stores visitors' IP addresses for security purposes, whether or not they are signed in. This website-hosting processing is separate from the Extension's chat and diagram processing; the Extension does not automatically send your API key, course context, chats, or diagrams to this website.
The policy page contains no developer-added analytics, advertising scripts, or tracking cookies. GitHub's hosting practices are governed by its own policies. Review GitHub Pages data collection and the GitHub Privacy Statement.
9. Contact and support email
For privacy questions or requests, contact amy.huangjujun@gmail.com.
If you choose to email the developer, the developer receives your email address, message, and any attachments you provide. These are used to respond to your request. Please provide only the information needed and remove personal or sensitive content from examples and screenshots. Never send an API key or encryption password.
Support email is handled through Gmail and is subject to the email providers' policies. You may request deletion of support correspondence using the contact address above; applicable legal obligations may limit deletion. The developer cannot recover or remotely delete data stored only on your device or independently held by third-party services.
10. Changes to this policy
This policy may be updated when functionality, data practices, or legal obligations change. The last-updated date will be revised. Material changes to Extension data processing will be prominently disclosed before the changed processing begins, and consent will be requested again where required.