Privacy Policy

aura-stream · Effective 6 August 2026 · Last updated 6 August 2026

Summary. aura-stream is a tool I built for my own use. It runs on my own computer, it accesses only my own Google account and channels I own, and there is no way for anyone else to connect an account to it. It collects no data from any other person. No YouTube data is sold, shared, or given to any third party.
Implementation status. The upload feature described here is under development. No video has been uploaded through this client yet, and no YouTube data has been received or stored yet. Rows marked planned describe intended behaviour, published in advance so that what the client does and what this policy says stay identical.

1. Who this policy is for

aura-stream is a single-operator, self-hosted personal tool, not a hosted product or public service. It has no sign-up, no user accounts, and no multi-user mode. The only person who authorises it and the only person whose data it handles is me, its author and operator.

This policy exists to describe exactly what the client does with YouTube data, as required of API Clients of YouTube API Services. If a future version is ever made available to anyone else, this policy will be rewritten before that happens.

2. What data the client accesses

videos.insert uploads to the channel that owns the credential used for the request, so each channel I publish to is authorised separately and has its own refresh token.

DataSourceWhy
OAuth access & refresh tokens — one per authorised channel Google OAuth 2.0, granted by me To call the YouTube Data API on my own behalf
Video metadata I author: title, description, tags, privacy status Typed by me into the client's upload form Sent with the upload request. This is my own content, not data obtained from YouTube.
Video file I produced Created locally by the pipeline The upload payload itself
Video ID and upload status of my own uploads planned The videos.insert API response So the local project record can cite the upload it produced. No read scope is requested; the upload response already contains this.
Aggregate performance metrics for my own videos — retention, click-through rate, average view duration planned YouTube Analytics API To judge which video formats work. The scope for this is not requested until the feature is built.

Data the client never accesses

3. Where data is stored, and for how long

Retention follows the YouTube API Services Developer Policies: data obtained from the API is refreshed from the API or deleted within 30 days, with the exception the policies allow for aggregate analytics data — and for that exception, the client checks at least every 30 days that the authorisation has not been revoked, deleting the stored data if it has.

WhatWhereRetention
OAuth refresh tokens (one per authorised channel) On my own machine only, held by a local service bound to 127.0.0.1, not reachable from the internet. Never embedded in, or copied into, the components that request them. Until revoked or deleted. See §5 for deletion on revocation.
Upload status and other API response fields planned Local files on my own machine Refreshed from the API or deleted within 30 days.
Video IDs of my own uploads planned Text files in a private Git repository on my own machine, backed up to a private remote repository (see §4) Retained as production records. A video ID is also public information — it appears in the video's own URL — and identifies my own content only.
Aggregate performance metrics planned Local storage on my own machine Refreshed from the API; authorisation re-checked at least every 30 days; deleted with the project record.
Video files and generated assets Local disk on my own machine Deleted at my discretion. Not YouTube data.

This website is a static page. It contains no analytics, no cookies, no trackers, and no server-side storage of any kind. No credential or YouTube data ever passes through it.

4. Who data is shared with

No YouTube data is sold, rented, published, transferred, or disclosed to any third party. It is not used for advertising, audience targeting, or model training. The only network destinations for YouTube data are Google's own API endpoints, which are where it came from.

Two disclosures, so that this section is complete rather than merely reassuring:

5. Revoking access and deleting data

Access can be revoked at any time via the Google security settings page (also reachable at myaccount.google.com/permissions → Third-party apps & services). Revoking invalidates the refresh token, and the client loses all access to that channel.

On revocation, stored data obtained from the API is deleted: within 7 days when revocation is made through the client itself, and within 30 days when made through the Google security settings page. The longer window for the latter is deliberate and honest: Google does not notify a client when a user revokes access there, so the client learns of it when a token refresh next fails — the 30-day authorisation check described in §3 is what guarantees this is noticed.

Locally stored data can also be deleted at any time by deleting the corresponding files. Because the client stores data only on my own machine and my own private repository, there is no external deletion request process to go through.

Deleting a video from YouTube is done through YouTube. Deleting a local record does not delete the published video, and deleting a published video does not delete the local record.

6. Security

What is in place today, and what is not:

No system is perfectly secure. This is a personal tool on a personal machine, and its security is bounded by the security of that machine.

7. Children

This client is not directed at children and is not used by anyone but its author. It collects no data from children, and no data from anyone other than its author.

8. YouTube API Services

aura-stream is an API Client of YouTube API Services. Its use of those services is governed by the YouTube Terms of Service. Google's collection and handling of data is described in the Google Privacy Policy.

9. Changes to this policy

If what the client does with data changes, this policy will be updated before the change takes effect, and the "last updated" date above will be revised. Because this policy is published from a version-controlled repository, its revision history is retained privately by me.

10. Contact

Questions about this policy or about the client's data handling: privacy@kirinchen.dev