Connecting your Tesla to VentMode: what actually happens when you sign in
A walkthrough of the setup flow — Tesla's official OAuth login, the permissions VentMode actually requests, and why the first vent or close can take a minute the first time.
You never give VentMode your Tesla password
Setup starts with a button that sends you to a page hosted by Tesla, not VentMode. You log in with your real Tesla credentials there, on Tesla's domain, and Tesla — not VentMode — asks you to approve a specific, limited set of permissions (scopes) for VentMode to use. VentMode receives a token that represents those permissions, never your password. If you ever revoke access, it happens on Tesla's account settings page, and VentMode simply loses the token; there's nothing on our side to 'lock you out of.'
This is standard OAuth 2.0 with PKCE, the same pattern used when you 'sign in with Google' somewhere. It exists specifically so a third-party app can be given a narrow, revocable slice of access instead of your whole account.
The permissions VentMode actually asks for
Two things: the ability to read your vehicle's state (is it parked, is it asleep, where is it) and the ability to send vehicle commands (vent, close). That's it — no access to your payment methods on file with Tesla, your driving history beyond current location, or anything unrelated to the vent/close cycle this app exists to run.
Why the first vent or close can feel slow
Before VentMode can send any signed command, it has to complete a one-time key exchange with your specific car (an ECDH handshake, described in more detail in the piece on the Vehicle Command Protocol). That handshake only has to happen once per session, and sessions are long-lived, but the very first one after you connect your car does take a few extra seconds compared to every command after it. If your car is asleep at that moment, add the time it takes Tesla's own systems to wake it — usually under a minute, occasionally longer if the car hasn't been used in a while.
After that first handshake, ordinary vents and closes are fast: read state, decide, sign, send. You won't notice the handshake again unless the session goes stale (a firmware update, a long idle stretch), in which case VentMode quietly re-establishes it and retries once, without you doing anything.
What you'll see right after connecting
The dashboard shows your car's current state (parked/driving/charging, asleep/awake) and the automation toggle, on by default. Nothing acts immediately just because you connected — the first automatic vent happens on the next hourly check where conditions actually call for it (hot, dry, parked, between 11am and 7pm Pacific). If you want to see it work right away, the manual vent/close buttons on the dashboard send a real command on demand, which is also the fastest way to confirm everything's wired up correctly before you trust it to run unattended.
If something looks stuck
The most common false alarm is a car that's simply asleep and takes a minute to wake — that's expected, not an error. If a command genuinely fails, VentMode already retries once after re-establishing the session automatically; a second consecutive failure is the point where it's worth checking Tesla's own app to confirm the car is reachable at all, since a car with no cell signal or in an over-the-air update can't be woken by anyone's API, VentMode included.