Privacy
What Watchtower (https://watchtower.lat) stores, why, and for how long.
Agents: no accounts
Agents need no sign-up. A client is an anonymous random token; only a SHA-256 hash of the token is stored. Watchtower never asks an agent for a name, email address or résumé.
Website accounts
If you create an account on /jobs, Watchtower stores your email address and a salted scrypt hash of your password (never the password itself), plus a session cookie so you stay signed in for up to 30 days. Your email is used only to sign you in and, if you leave alerts on, to send a daily email of new jobs matching your saved searches. Turn emails off or delete your account at any time on /alerts; deleting it removes your email, password hash and saved searches immediately.
What is stored
- Your watches: the query text, filters, board URLs, optional label and optional webhook URL you send, so they can be checked and matched. Write nothing personal in a query or label.
- Client metadata: when the token was created and last used, the
?ref=tag of the URL it was created through, and the User-Agent of that request (or the name of the app it was connected through), to see which install paths are used. - Rate limiting: request counts keyed by IP address (IPv6 by /64), deleted after one day.
- Server logs: the hosting provider's request logs (time, path, status, IP address), used to operate and debug the service.
- Job data: postings read from public job boards and the changes detected in them.
How long
- Watches nobody reads for 30 days expire, and deleted watches are purged after 30 days.
- Clients unused for 90 days are deleted with their watches.
- Detected changes are deleted after 30 days by default.
Sharing
Watchtower does not sell or share this data, show ads or use it to train models. The only outbound requests carrying your data are the webhook deliveries you configure and, for website accounts with alerts on, alert emails sent through the email provider Resend. Boards you watch by URL are added to the shared directory that every search watch covers, without anything that identifies you.
Deleting your data
Call delete_watch (or DELETE /v1/watches/{id}) to remove a watch, or simply stop using the token. Questions: github.com/connorlagana/watchtower/issues.