Official application site for Google OAuth verification. This desktop/CLI app helps upload, schedule, and manage YouTube Videos securely and locally across three owned channels.
This page contains the explanations, policies, and contact information required for Google OAuth app verification.
To upload, edit, and manage multiple items across three channels at the same time—building the automations that keep this operation concurrent and sustainable—these scopes are required.
./auth/youtube.upload
This scope is used to programmatically upload multiple items to three channels at once via videos.insert
.
If needed, scheduling is done with status.publishAt
. During testing, all uploads are set to
private by default. Uploading with a narrower scope is not possible. This permission is required to
keep multi-channel, multi-asset upload flows sustainable.
./auth/youtube
This scope is required to manage existing content beyond uploads: update titles/descriptions/tags (videos.update
),
set thumbnails (thumbnails.set
), edit playlists (playlists.*
, playlistItems.*
),
and schedule/update live broadcasts (liveBroadcasts.*
). youtube.upload
alone does not cover
these operations. This scope is necessary for the automations that keep multi-channel content operations concurrent
and sustainable across the three channels.
DailyDoseNews-contentManager is a production-ready tool under continuous development. It currently operates on my three channels but is designed to scale further.
contentManager/youtube/secrets/tokens/
. Tokens and logs are never committed to Git
(excluded via .gitignore
) and remain only on my secure device.
Prerequisites
contentManager/youtube/
.Setup
pip install google-api-python-client google-auth google-auth-oauthlib pyyaml python-dateutil
Place OAuth client JSON into contentManager/youtube/secrets/google_client_secret.json
.
On first run, a browser window will open for consent.
Test Steps (TR channel)
contentManager/youtube/centers/tr.yaml
→ set flags.videos.insert: true
.upload.media.path
.default_schedule
date/time.python -m contentManager.youtube.pipelines.yt_run_center --channel tr
https://www.googleapis.com/auth/youtube
and https://www.googleapis.com/auth/youtube.upload
are requested.videos.insert
(and if enabled: videos.update
, thumbnails.set
, playlistItems.insert
) in contentManager/youtube/logs/tr/<date>/<run_id>/run.log
.artifacts.json
contains the new video_id
.token_tr.json
or via Google Account → Security → Third-party access.Other Channels
Repeat the same steps for EN/AR channels with --channel en
/ --channel ar
.
For questions, support, or issues regarding the app:
Support Email : kmclabs.digital@gmail.com, kutaycetiner@gmail.com
This email address is also listed in the Google OAuth “User support email” field.
Developer/Owner: Kutay Mehmet Çetiner — Software Engineer based in Izmir, Turkiye.
Project: DailyDoseNews-contentManager is a production-ready application used to manage my YouTube channels. It is actively maintained, and future updates and improvements are always announced here on the official site.