# License

A license key entered in Preferences activates this computer. After that the app verifies the license offline and checks in quietly in the background.

## Where to find it

| Action | How |
| --- | --- |
| Enter a key | `⌘,` (`Ctrl+,`) or `Preferences...` in the Home menu, then `General` and `License` |
| See who it is licensed to | `About Bobby Tables`, the `License` row |
| Open the license section when it has expired | `License expired` in the status bar |
| Renew or manage machines | `Renew`, or your account page at [bobbytables.app/account](https://bobbytables.app/account) |

## Activating

Paste the key from your purchase email into `License key` and choose `Activate`. The app exchanges the key for a signed receipt bound to this computer, and the section changes to show the license. `Email me my key` sends the key again to the address you bought with.

## Once it is active

The section shows the license email and the date it is active until, with `Refresh` and `Deactivate`. `About Bobby Tables` shows the same email in its `License` row. The status bar shows nothing about the license while it is active.

## Machines

Each license covers a number of machines, shown on the [pricing page](https://bobbytables.app/pricing). `Deactivate` asks `Deactivate this machine?`, then frees this computer even without a network connection and returns the section to the key field. The other machines on the license are listed and deactivated from your account page.

## Renewals and refresh

You renew on your account page, and the app picks up the new date on its next background check. `Refresh` asks the license server now, shows `Checking` while it waits, and updates the date without entering the key again.

## When a license expires

The app keeps running, keeps your saved connections and data, and returns to its unlicensed connection limits. The status bar shows `License expired`, a banner at the top names the date with `Renew` and `Refresh`, and the License section adds `Renew` beside `Refresh` and `Deactivate`. Opening a licensed feature such as the schema diagram shows `That needs a license` with `Not now`, `Enter key` and `Buy a license`. After you renew, `Refresh` brings everything back.

## Good to know

- The key is sent once, at activation, and is never stored on this computer. The app keeps only the signed receipt.
- The receipt is verified offline, so the app works without a network once the license is active.
- A network outage or a server error leaves an active license as it was.
- The background check sends the signed receipt and nothing else. Activation also sends a hashed machine identifier, the computer's host name, the platform and the app version.
- Setting the computer's clock back does not undo an expiry.

## Related

- [Updates and trust](https://bobbytables.app/docs/updates.md)
- [Preferences](https://bobbytables.app/docs/preferences.md)
- [Schema diagram](https://bobbytables.app/docs/schema-diagram.md)
