What Readers Share#
Every reader works as the service account of the proxy, whether they chat anonymously or signed in to your app. This page lists what readers share as a result, how the proxy limits it, and where their conversations are kept.
Because every reader shares one account, the proxy forwards only the requests that the embedded chat itself sends, each about one conversation, one upload, or the catalog. It refuses everything else with a 404, including the requests that act on the whole account, such as listing, clearing, or deleting all conversations, files, and saved prompts. Otherwise, any reader could see or delete the chats of every other reader.
Readers also share the scheduled tasks of the service account, and its file storage unless you turned it off. See the Scheduled Tasks and File Storage section of the Set Up the Proxy page.
Anyone who gets a token from the proxy and knows the ID of a conversation can read the conversation, ask new questions in it, and download its artifacts. The IDs cannot be guessed, but they appear in the request paths of the proxy and in the events of the chat. Keep them out of the access logs of your reverse proxy and out of your analytics.
Uploads are off by default, because the uploads of every reader land with the same account, where any other reader could have the agent read them out. Set allowUploads: true on the proxy only when every reader may see the files of every other reader, and turn on capabilities.attachments on the page only together with it.
Search is off too. Set ALLOW_SEARCH=1, or allowSearch: true, only for a search widget, and only when every reader may search every document in the project. The chat does not need search, and the documents that an answer cites still open.
A script cannot use the proxy to change how your agents are set up, or to pick settings that your catalog does not offer. To limit which agents readers can pick, pass allowedAgentIds: ['...'].
Any reader can open every document that the service account can see in the project, by its ID, and search them all when search is on. A reader gets the link to the file of a document only from a document that they can already open. That is the same boundary as for the chat answers, which already quote those documents, so give the service account access only to documents that every reader may see.
The proxy keeps the type of a stored file only for a PDF document, a PNG, JPEG, GIF, or WebP image, or a plain text file. It sends every other file, HTML and SVG included, as a download, so that none runs as a page on your site.
Where Conversations Are Kept#
Your Squirro instance stores the conversation of every reader as a conversation of the service account in the project, together with the page context that the chat sends with each question. The conversations have no retention period, and stay until someone who signs in as the service account deletes them. Readers cannot delete their own conversations.
Anyone who signs in to Squirro Neo as the service account sees the conversations of every reader under Recent chats. To export or delete all of them in one project, select the profile picture and navigate to Settings → Chat data. Deleting there, or deleting a single conversation, removes it from the history for good, but your Squirro instance keeps its content. To erase that content, call POST /service/genai/v1/projects/{pid}/conversations/_clear with {"mode": "purge"} as the service account. The call erases every conversation of the account in the project, including those already deleted, and cannot be undone. It does not remove the scheduled tasks that readers created, or what the agent wrote to the file storage.
To answer, your Squirro instance sends the question, the page context, the earlier messages of the conversation, and passages of the documents that it found to the language model provider of the project. For the providers, see the Model Providers section.