Glossary: "The product" means the Typing Mind Custom product; "Chat Instance" means the AI Chat interface you created when using the product. "You”, “the admin" is the people who create a new chat instance and have the permission to config and customize the chat instance; "Your users" means the people who use the Chat instance, send messages, and use the chat features on your chat instance, this could be your teammate, your users, your community members, etc.
For Cloud-hosted Instances
When you create a new chat instance at https://custom.typingmind.com, we gather certain information about you, which includes your email address, your name, and the name of your chat instance. This information is used to send you an email containing a link to your chat instance.
All information collected is securely stored on our server. We never share your information with anyone else or any third-party service provider. If circumstances arise where we need to share your information with a third party (for instance, to link your billing information with your chat instance), we will always seek your explicit permission beforehand (via an "I understand" checkbox).
Vercel.com is employed to host your chat instance.
The chat instance you create is utilized by your users/team/community. When your users log in to the chat instance, we collect their email address to verify their identity. This information is used to send them an email with a login link. We also collect their name, avatar, and other information, but only if they choose to provide it to us. We use this information to display their name and avatar on the chat instance.
During the setup of your chat instance, we collect your OpenAI API key or Anthropic API key. These keys are utilized to connect to OpenAI/Anthropic to generate AI chat responses when your users use your AI chat instance. We never share your API keys with anyone else or any third-party services. Your users will not have access to see your API key, and keys are not used for any other purposes.
When your users log in to your chat instance, we dispatch an email to them containing the login code. The email originates from "email@example.com", with your name and email address displayed to the users as the "Reply-to" address. You can configurate this sender email address by using your own SMTP credentials, this can be set up in the Admin panel. Note, only individuals explicitly added by you in the Admin Panel can log in.
The chat history and messages of your users are transmitted through our server when they interact with your chat instance. By default, we do not log or store any of these chat messages. You can enable chat message and history logging in the Admin Panel. Even if chat history and message logging are turned off, the messages must still pass through our server to prevent your API key from being exposed to the end users. Our server, through which the messages pass, is hosted on vercel.com.
Your users' chat history, custom prompts, libraries, and bookmarks are stored locally on the device they use to access your chat instance. Users can opt to backup & sync their data across various services offered within the chat interface, including TypingMind Cloud (Backup/Sync/Share).
Users on your chat instance are unable to view each other's data and chat history.
We permit the embedding of custom HTML/JS code via the Admin panel. This embedded code executes on all your users' browsers when they use the app. You are responsible for carefully checking the external code for malicious elements and potential privacy concerns.
For Self-hosted Instances
Glossary: “The system” refers to services included in the self-hosted instance setup, for instance: the NodeJS server, the MySQL database, etc. Please consult the self-host instruction to learn about all the services required for setting up the Typing Mind Custom system.
When you sign up for the self-host setup, we collect your GitHub username. This username is utilized to grant you access to the private repository, which houses the self-host software.
Your self-hosted instances of Typing Mind Custom are deployed on your infrastructure. The system works entirely within your infrastructure environment and internal network. You have complete freedom to set up any supplemental security layers and configure the system as you see fit.
The system never sends any user data outside of your infrastructure. All data are stored within the system’s database (MySQL).
If users utilize the Cloud Sync & Backup feature or the share feature, the data are also stored inside the system’s database.
If you have multiple self-host instances, all of those instances will share the same Cloud Sync & Backup database. This means a user can log in to the Cloud Sync & Backup using the same email and access the same data across multiple instances/devices.
To ensure the system operates normally, it makes three types of external network requests: 1. Requests to OpenAI/Anthropic API (or other external LLM API if you use an external LLM for the chat model): this is fundamental for app functionality, allowing you to chat with AI. You can opt to use an internal private LLM API, in which case no external requests will be made to OpenAI/Anthropic; 2. Requests to check for software updates: this notifies you when a new system upgrade is available for new features, improvements, and bug fixes. This request is sent to the Typing Mind's server and only contains minimal information needed for update checks: your current system version; 3. Requests to check for licenses: this verifies the valid license of your self-host instance and ensures that you are using the correct number of users and instances as per your contract/subscribed plan. This request is sent to the Typing Mind's server and only contains minimal information needed to verify your license: your instance key, the user's unique identifier ID (this could be the user’s email or a unique random string, depending on the authentication system used), and your instance hostname.
Absolutely no user data is sent out to any external services. This can be verified using various black-box testing methods like monitoring network requests from the app.
Note, some features in the app, such as “Share Chat”, “Export to file”, “Share character”, “Share plugins”, etc., allow users to share or export data (including chat conversations) to external services. Control is beyond our reach if users choose to share/expose this data to external services on the internet.
Some data from the Admin panel are hidden from the user, for instance: System Instruction, Training Data, AI Character Instructions, etc. Check the labels under each field in the Admin panel to understand what users can and can't see.
The system allows you to embed custom HTML/JS code via the Admin panel. This embedded code executes on all your users' browsers when they use the app. You are responsible for meticulously checking the external code for any malicious elements and potential privacy issues.
Your privacy is important to us. It is typingmind.com's policy to respect your privacy regarding any information we may collect from you across our website, https://typingmind.com, and other sites we own and operate.
We only ask for personal information when we truly need it to provide a service to you. We collect it by fair and lawful means, with your knowledge and consent. We also let you know why we're collecting it and how it will be used.
We only retain collected information for as long as necessary to provide you with your requested service on typingmind.com. What data we store, we'll protect within commercially acceptable means to prevent loss and theft, as well as unauthorised access, disclosure, copying, use or modification.
We don't share any personally identifying information publicly or with third-parties, except when required to by law.
Our website may link to external sites that are not operated by us. Please be aware that we have no control over the content and practices of these sites, and cannot accept responsibility or liability for their respective privacy policies.
You are free to refuse our request for your personal information, with the understanding that we may be unable to provide you with some of your desired services.
Your continued use of our website will be regarded as acceptance of our practices around privacy and personal information. If you have any questions about how we handle user data and personal information, feel free to contact us.
This policy is effective as of 30 June 2023.