By Samuel Coe, founder of BitLark LLC
Last Updated: November 2, 2026
Story Sentry is built by parents, for parents. Security and privacy are treated as core requirements, not afterthoughts. This page documents the specific measures in place to protect your Yoto account credentials, your Story Sentry account, and your family's data.
Story Sentry connects to your Yoto account using OAuth with PKCE (Proof Key for Code Exchange) — the same authentication method used by the official Yoto app. During the linking process, you log in to Yoto directly on Yoto's own website. Story Sentry never sees your Yoto password.
After authorization, Yoto issues OAuth access tokens to Story Sentry. These tokens are what Story Sentry uses to communicate with the Yoto API on your behalf. Story Sentry stores the rotating refresh token encrypted and serializes refreshes server-side so only one refresh is attempted for your account at a time. You can re-link your Yoto account from Settings, and support can assist with account disconnection requests.
Yoto OAuth tokens are encrypted using AES-256-GCM before being stored in the database. AES-256-GCM is an authenticated encryption standard — it both encrypts the data (making it unreadable without the key) and verifies its integrity (detecting any tampering).
If you use the optional AI metadata features in the Library Manager, your Anthropic or OpenAI API keys are also encrypted with AES-256-GCM before storage. You can delete stored API keys at any time from Settings.
Story Sentry uses JWT (JSON Web Token) access tokens for session management:
Session tokens are stored in httpOnly, secure cookies — they are not accessible to JavaScript on the page, protecting against cross-site scripting (XSS) attacks.
All state-changing requests (POST, PUT, DELETE, PATCH) require a CSRF (Cross-Site Request Forgery) token in addition to the session cookie. The CSRF token is HMAC-SHA256 signed and validated on the server. This prevents malicious websites from making unauthorized requests using your session. GET, HEAD, and OPTIONS requests are exempt since they do not modify data.
All communication between your browser and Story Sentry servers uses HTTPS with TLS encryption. All communication between Story Sentry's servers and Yoto's cloud API also uses HTTPS. No data is transmitted over unencrypted connections.
Story Sentry account passwords are hashed using industry-standard one-way hashing algorithms before storage. Plain-text passwords are never stored or logged.
Story Sentry is designed for parents and caregivers, not children. The service does not collect personal information directly from children. Account creation and management is performed by the parent or caregiver.
The only child-related data stored is:
This data is necessary to enforce parental controls and display the listening dashboard. We do not knowingly collect personal information from children under 13.
Story Sentry itself uses essential first-party cookies only: an authentication session token (httpOnly, secure, not accessible to JavaScript) and a CSRF token (readable by JavaScript on the same origin, required for request validation). We do not use first-party tracking or advertising cookies. Marketing pages also embed a Ko-fi donation widget, and that third-party service may set cookies under its own domain and privacy policy.
Story Sentry does not sell, rent, or trade your personal information. Data is shared only in these limited circumstances:
Story Sentry is an independent product built by BitLark LLC. It is not made by, endorsed by, or affiliated with Yoto Ltd. It connects to Yoto's official cloud API using the same OAuth mechanism as the official Yoto app. BitLark LLC is based in Missoula, Montana, USA. Questions or concerns about security can be sent to [email protected].
Yes. Story Sentry uses AES-256-GCM encryption for stored OAuth tokens, httpOnly secure cookies for session management, HMAC-signed CSRF tokens on all state-changing requests, and HTTPS/TLS for all communication. It never stores your Yoto password.
No. Story Sentry uses OAuth (the same method used by the official Yoto app) to connect to your Yoto account. It receives access tokens, never your password. Those tokens are encrypted with AES-256-GCM before being stored in the database.
Yoto OAuth tokens and optional AI API keys are encrypted at rest using AES-256-GCM, an authenticated encryption algorithm. All data in transit is protected by HTTPS/TLS. Passwords are hashed using industry-standard algorithms.
Story Sentry does not collect personal information directly from children. All account management is performed by the parent or caregiver. The only child-related data stored is device playback history — data necessary to enforce parental controls and display the listening dashboard.
You can request account and data deletion by contacting [email protected]. You can re-link your Yoto account from Settings, and support can help with account disconnection requests.
Story Sentry itself uses only essential first-party cookies: a session token (httpOnly, secure) and a CSRF token. It does not use first-party tracking or advertising cookies. Marketing pages also embed a Ko-fi donation widget, and that third-party service may set cookies under its own domain.