Privacy Policy for SheetConnect for Salesforce

Effective date: October 6, 2026

SheetConnect for Salesforce is a Chrome extension that adds a side panel to a Google Sheets spreadsheet the user has open. From that panel the user can import Salesforce object, list view, query and report data into a chosen worksheet, send user-confirmed record changes from a worksheet back to Salesforce, convert values in a worksheet using Salesforce lookups, and add Salesforce's rules to a worksheet's columns. It works only with the Salesforce organization the user is already signed in to and the spreadsheet the user has open.

From version 0.11.0 the extension also includes an optional Agent: a chat that prepares these tasks from a sentence. The Agent is off until the user turns it on and accepts its terms, and it is the only part of SheetConnect that sends data to a server operated by the publisher. Everything below that is not under "The optional Agent" works entirely between the user's browser, Salesforce and Google.

Data SheetConnect for Salesforce handles

The extension may handle the following data only to provide its user-facing features:

The extension does not collect browsing history, advertising identifiers, analytics, telemetry, mouse movement, scrolling behavior, or keystroke logs. It contains no ads.

How data is used

Data is used only to run what the user asks for: listing the Salesforce organizations the user is signed in to, listing objects, list views, reports and fields, running the selected query or report, writing the results into the selected worksheet, reading the selected worksheet to validate and submit record changes, looking up Salesforce records to convert values, running a flow the user built (reading the selected worksheet, or the records that conditions, a list view, a report or a query the user chose return, looking records up, creating, updating, upserting or deleting records as its steps say, and starting the autolaunched Salesforce flows its steps name, with values from each row; to build such a step the extension lists the organization's autolaunched flows and their input variables), and adding the rules the user chooses in Validate (picklist dropdowns, checkboxes, length limits, marks on values Salesforce would refuse, highlights, a header filter and an edit warning on the Id column) to the selected worksheet without changing any cell value. Salesforce writes and worksheet replacements require the user to confirm a summary naming the organization, object, worksheet and record count first.

The optional Agent

The Agent is a chat in the side panel. It is off by default. To turn it on, the user reads the Agent terms, ticks that they agree, and connects it, which gives the Agent an email-only Google token; the publisher's server records which version of the terms the user accepted. The user can disconnect the Agent at any time from its account panel.

What the Agent is for. The Agent reads the org and the spreadsheet with a small set of tools and prepares imports, formulas, Write back, Validate and Apex as cards in the chat. It never runs anything itself: every card runs only when the user presses its button, after the same preview and confirmation the extension's own tabs use, and that run goes directly from the browser to Salesforce and Google, not through the publisher's server. Its skills (slash commands such as /import) are messages like any other: they name a playbook the publisher's server keeps for that task, and send the same data as any message.

What is sent, and to whom. When the user sends the Agent a message, the extension sends to the publisher's server, which passes it to OpenAI to produce the reply:

These may include personal data if the user's Salesforce organization or spreadsheet holds it. The extension removes Salesforce session identifiers, access tokens and organization addresses from tool results before they leave the browser, and the server checks for them again. The Salesforce session, the Google Sheets (drive.file) token and full spreadsheets are never sent. The Agent signs in to the publisher's server with its email-only token, which the server checks with Google to learn the user's email address and Google account ID.

The publisher's server is a Google Cloud Function in Tokyo (asia-northeast1), with a Firestore database in the same region. It stores:

User records and feedback are kept while the user uses the Agent and are deleted on request.

OpenAI processes the messages and tool results as the publisher's service provider to produce the Agent's replies, under OpenAI's API terms. OpenAI keeps each conversation for 30 days so the chat can continue and does not use API data to train its models (see OpenAI's API data controls). OpenAI processes data in the United States.

Allowance. The Agent has a free usage allowance that renews over 5 hours and 30 days; each message uses it, skills included, and running a card does not. The allowance may change or stop.

Data sharing and transfers

Without the Agent, requests go only to the Salesforce organization the user selected, the Google Sheets and Drive APIs for spreadsheets the user explicitly grants, and Google's Picker service during that grant; the publisher receives no user data. With the Agent turned on, the data listed under "The optional Agent" also goes to the publisher's server on Google Cloud and to OpenAI, only to produce the Agent's replies. Salesforce data is transferred to the user's own Google spreadsheet, and worksheet data is transferred to the user's own Salesforce organization, in both cases only as the user directs. Before a write-back, unless the user turns it off, and before every flow run that updates, upserts or deletes records, the Salesforce values it is about to change are copied into a new worksheet in the same spreadsheet, with instructions for undoing the change; that worksheet stays in the user's spreadsheet, not in extension storage. When the user creates an ImportSettings tab, each worksheet's import source (the worksheet name, the source type, the object, list view or report name, and the SOQL text or the list view or report ID) is written to that tab in the user's own spreadsheet and read back from it, and a row naming a worksheet that does not exist adds that worksheet; like any worksheet, it can be seen and changed by everyone with access to the spreadsheet. Data is not sold, and is not used for advertising or for training generalized models.

Storage and retention

On the user's device:

On the publisher's server, only what is listed under "The optional Agent", and only for users who turned the Agent on.

User controls

Users choose the Salesforce organization, the spreadsheet, the worksheet, the source or operation, and the rows and columns involved. Google access is requested only when the user selects Connect Google; access to each spreadsheet is granted through Google Picker and can be revoked at any time from the user's Google Account permissions page. Importing replaces a worksheet and updating Salesforce records both require an explicit confirmation naming the destination. Creating an ImportSettings tab also asks first. Writing a status column back into the sheet is off by default. The Agent stays off unless the user turns it on; Disconnect in its account panel deletes its chats from the browser and drops its token. To have the Agent's records deleted from the publisher's server, contact the publisher. Users can remove local data by clearing Chrome extension storage or uninstalling the extension.

Security

The extension uses HTTPS for all network requests and packages its executable JavaScript, HTML and CSS with the extension. A separate static page on google-picker.dina-app.com, a site that serves nothing else, loads Google's official Picker library to let the user grant one spreadsheet at a time (versions up to 0.11.0 use the same page on dina.jp). The Google token stays out of URLs and storage, and the extension accepts Picker messages only from that exact page. The side panel never receives the Salesforce session or the Google Sheets token; the only credential it holds is the Agent's email-only token, for its requests to the Agent's server. The Agent's server accepts browser requests only from this extension's origin, answers only requests that carry a valid email-only token for SheetConnect's OAuth client, and refuses a token that carries Drive or Sheets access.

Limited Use disclosure

SheetConnect for Salesforce's use of information received from Google APIs adheres to the Chrome Web Store User Data Policy and the Google API Services User Data Policy, including the Limited Use requirements. Data is used only to provide the disclosed user-facing import, update, conversion, validation and Agent features. Spreadsheet data is shared with the publisher's server and OpenAI only when the user uses the Agent, only as described above, and only to produce the Agent's replies. Data is not used for advertising, is not sold, is not used to train generalized AI models, and is not made available for human reading except with the user's affirmative agreement for support (such as including a chat with feedback), when necessary for security, to comply with applicable law, or after aggregation and anonymization for internal operations. The extension performs no developer-operated analytics or telemetry.

Changes to this policy

If this policy changes, the effective date above changes with it. A change to what the Agent sends or keeps also changes the Agent terms, which the Agent then asks each user to read and accept again before it can be used.

Independent product

SheetConnect for Salesforce is an independent product and is not affiliated with, endorsed by, or sponsored by Salesforce or Google. Nor is it affiliated with, endorsed by, or sponsored by OpenAI, which the Agent uses as a service provider. Salesforce, Google Sheets, Chrome and OpenAI are trademarks of their respective owners.

Contact

For privacy questions or to have the Agent's records deleted, contact the publisher using the verified contact email shown on the Chrome Web Store listing.