Privacy policy
Effective date:
This policy explains what OneTimeLogin Jarvis ("Jarvis", "we", "us") does with your information, and in particular with the data it receives from Google when you connect Google Calendar.
OneTimeLogin Jarvis's use and transfer of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
1. Who we are
Jarvis is operated by Sanjay Sachi, an individual doing business as OneTimeLogin, in New Jersey, United States. Jarvis is a private scheduling assistant: you sign in at agents.onetimelogin.com/private-jarvis/ with your OneTimeLogin account and a second factor, connect Google Calendar, give scheduling permissions to people you trust, and Jarvis checks your availability and adds the meetings you approve to your calendar.
Jarvis is in a testing phase and is available only to invited test users.
2. Data we access
2.1 Google user data
When you connect Google Calendar, Google asks you to grant these permissions (scopes). Jarvis requests no others; in particular it does not request read access to all your calendars (calendar.readonly).
| Permission | What Jarvis receives |
|---|---|
| openid |
Your Google account ID and your verified email address, read once from Google's sign-in (OpenID Connect) service when you connect. |
| https://www.googleapis.com/auth/calendar.freebusy | For a time window Jarvis asks about on your primary calendar: the busy time ranges inside it. No titles, descriptions, locations or attendees. |
| https://www.googleapis.com/auth/calendar.events | Permission to create an event on your primary calendar, and to read back an event Jarvis created (by the event ID Jarvis gave it). Jarvis does not use this permission to list, search, read, change or delete any other event. |
Google also gives Jarvis an access token and a refresh token, which let Jarvis make the calls above without your Google password. Jarvis never sees your Google password.
2.2 Information from your OneTimeLogin account and your use of Jarvis
- Your OneTimeLogin account identifier, session identifier and the fact and time of your sign-in and second-factor check.
- Devices you register in the Jarvis console, and their labels.
- Your meeting preferences (for example preferred start and end times and time zone).
- The scheduling permissions you create: allowed weekdays and hours, time zone, maximum meeting length, daily limits, expiry, and whether each meeting needs your approval.
- The people you pair with in Jarvis (their OneTimeLogin account identifiers).
The public pages on jarvis.onetimelogin.com set no cookies, run no analytics and load nothing from other websites. They remember only your light or dark theme choice, in your own browser.
3. How we use it
We use Google user data only to provide the scheduling features you see in Jarvis:
- Identity (openid, email): to record which Google account you connected, to prevent a different Google account being swapped in when you reconnect, and to address your primary calendar (Google uses your email address as its calendar ID).
- Free/busy: to check that a time is free before Jarvis offers it to a person you paired with, and again immediately before it creates the event. Jarvis uses the answer only to decide yes or no.
- Events: to create one private event for a meeting that you approved, or that falls within a scheduling permission you granted, and to read that event back to confirm it was created. Events Jarvis creates have the title you chose (by default "Private meeting"), the agreed start and end time and time zone, no description, no attendees, private visibility, and a Google Meet link only if you asked for one. Jarvis tells Google not to send any invitations or notifications.
We do not use Google user data for advertising, for building profiles, for credit or lending decisions, or for any purpose unrelated to these features.
4. How we store and protect it
- Google tokens. Your Google refresh token is handled only by a separate, isolated credential-broker process. The main Jarvis application never receives it. The broker stores it in AWS Secrets Manager, which encrypts it at rest, in one secret per connection together with your Google account ID, the granted permissions and the date it was stored. Short-lived access tokens are kept only in the broker's memory, for at most five minutes.
- Jarvis records. Jarvis keeps its records in a PostgreSQL database with row-level security, so each account's records are separated from every other account's. For a Google connection it stores the Google account ID, your Google email address (as the calendar ID), the connection status and expiry, and a reference to the stored token (not the token itself). For each meeting it stores the meeting title you chose, the start and end time, time zone, the person it is with, the times offered to that person, the ID of the event Jarvis created, and whether creation succeeded.
- Activity journal. Jarvis keeps an append-only, tamper-evident journal of what it did: the kind of action (for example "proposal sent" or "action approved"), when, record identifiers, statuses and checksums. The journal does not contain meeting titles or calendar content.
- Not stored. Jarvis does not store your free/busy answers or busy times, and it does not copy the content of any calendar event other than the ones it created.
- Protection. Connections between your browser and Jarvis, and between Jarvis and Google, use HTTPS. Access to Jarvis requires your OneTimeLogin sign-in with a second factor; connecting a calendar and exporting data require a recent second-factor check. Jarvis's own log messages record fixed status codes, never tokens or calendar content. Access to production systems is limited to the operator.
6. AI and machine learning
No Google user data is sent to Claude, Gemini or any other AI or machine-learning model, and none is used to train models. If this ever changes, we will update this policy and ask for your permission first. Google user data will never be used to develop, improve or train generalized AI or machine-learning models.
7. Limited Use of Google user data
OneTimeLogin Jarvis's use and transfer of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements. In particular, we:
- use Google user data only to provide and improve the user-facing scheduling features described in this policy;
- transfer it only as needed to provide those features, to comply with law, for security, or as part of a business transfer with your agreement;
- do not use or transfer it for serving advertisements, including personalized or retargeted ads;
- do not allow humans to read it except as described in section 5;
- do not sell it, and do not use it to determine creditworthiness or for lending.
8. Retention
- Google tokens: kept while your calendar connection is active. A connection expires 90 days after it is made unless you reconnect. When you disconnect, the stored token is overwritten immediately (see section 9). AWS Secrets Manager may keep the previous version of a secret in its version history until AWS removes it; once Google has revoked the token, that copy can no longer be used.
- Free/busy answers: not stored.
- Jarvis records (connections, permissions, proposals, meetings): kept while your Jarvis account is active, and deleted within 30 days of a verified deletion request [OWNER/LAWYER REVIEW].
- Activity journal and security records (no meeting titles or calendar content): kept for up to 1 year after your account is deleted, for security, fraud prevention and audit, then deleted [OWNER/LAWYER REVIEW]
- Backups: deleted data may remain in encrypted backups for up to 35 days before it is overwritten [OWNER/LAWYER REVIEW]
- Server logs: kept for up to 90 days [OWNER/LAWYER REVIEW]
Events that Jarvis created are in your Google Calendar, which you control. Disconnecting Jarvis or deleting your Jarvis data does not remove them; you can delete them in Google Calendar.
9. Disconnecting, access and deletion
- Disconnect in Jarvis. In the Jarvis console, open Connections and choose "Revoke connection". Jarvis marks the connection revoked at once, so it can no longer be used; it then overwrites the stored token with a revocation marker and asks Google to revoke the token. If Google cannot be reached at that moment, the connection stays disabled in Jarvis and you can finish the revocation at Google.
- Revoke at Google. Remove "OneTimeLogin Jarvis" at myaccount.google.com/permissions. Jarvis then can no longer reach your calendar.
- Get a copy. In the console, under Me, choose "Export my private data" to download your preferences, permissions, connections, meetings and receipts.
- Delete. Email sanjay.sachi@gmail.com from the email address on your account and ask us to delete your Jarvis data. We will confirm the request and complete it as described in section 8, normally within 30 days [OWNER/LAWYER REVIEW].
10. Children
Jarvis is not directed to children. It is not for anyone under 13, or under 16 where local law sets that age for consent to data processing, and we do not knowingly collect their information. If you believe a child has used Jarvis, email us and we will delete the data.
11. Changes to this policy
We will post any change on this page with a new effective date. If a change affects how we use Google user data, we will tell you in Jarvis or by email and ask for your consent before the new use begins.
12. Contact
Sanjay Sachi, doing business as OneTimeLogin, New Jersey, United States. Email: sanjay.sachi@gmail.com (support, privacy and developer contact).