The publishing tool and the YouTube API
An accurate description of the tool that requests access to the channel owner's own YouTube account: what it does, who uses it, and which scopes it requests and why.
Last updated: 2026-09-18
Short description
A local publishing tool used only by the owner of the Sbar Tube channel. It uploads a finished episode to his own YouTube channel with the title, description, tags and privacy status he chooses, and afterwards reads back channel and video metadata to confirm the upload succeeded. No other users, no other channels, and no automatic publishing: every upload is approved by a human before it runs.
Current status, stated plainly
As of the date on this page, this project has made no call to the YouTube API. What is built today is the local half: the tool assembles a complete upload package on disk containing the video file, the upload metadata, the certification notice and a checklist, and then a human uploads the episode by hand through YouTube Studio. Moving that step to the API is the reason this audit is being requested, and this page describes the tool as it will operate once the API is enabled, not as it operates today.
Requested scopes and the reason for each
| Scope | Why it is requested |
|---|---|
| https://www.googleapis.com/auth/youtube.upload | It is the narrowest scope that permits the videos.insert call used to upload the episode file to the owner's own channel. |
| https://www.googleapis.com/auth/youtube.readonly | Read only access, permitting the videos.list and channels.list calls that confirm after an upload that the video arrived in the expected state, with no write or delete permission. |
These two are the narrowest scopes that do the job: the broader youtube and youtube.force-ssl scopes would also permit deletion and comment management, which this tool neither needs nor requests. Google's own scope list is at https://developers.google.com/identity/protocols/oauth2/scopes, and the endpoint references are at https://developers.google.com/youtube/v3/docs/videos/insert, https://developers.google.com/youtube/v3/docs/videos/list and https://developers.google.com/youtube/v3/docs/channels/list.
Neither youtube.force-ssl nor youtubepartner nor any analytics scope is requested. Custom thumbnail upload stays outside the tool and is done in YouTube Studio, so that no scope is requested which is not used.
What the tool commits to
- The altered or synthetic content declaration is always set to true, because the imagery and the narration are generated.
- The made for kids declaration is always set to false, since the channel addresses a general audience.
- The account holder has full control of title, description, tags and privacy status before the upload, with no silent truncation or alteration of what he wrote.
- Before the upload, the tool shows the certification notice required by the YouTube API Services Terms of Service: clicking upload certifies that the content complies with the YouTube Terms of Service and the Community Guidelines and does not violate the rights of others.
- No statistics are stored, no metrics are derived from API data, and API data is not merged with any other source.
The governing documents: the YouTube API Services Terms of Service at https://developers.google.com/youtube/terms/api-services-terms-of-service, and the developer policies at https://developers.google.com/youtube/terms/developer-policies.
Copy for the consent screen and the audit form
Sbar Tube Studio Publisher uploads finished episodes of one Arabic educational YouTube channel to that channel owner's own account, and reads back his channel and video metadata to verify each upload. It is a local, single user tool: it has no public deployment, no end users, and it never touches another channel. Every upload is reviewed and approved by a human first, and every upload declares altered or synthetic content.