If you check the Videos insert method in the documentation. You will find that it states that it requires authorization

Authorization requires that you request permission of the user to access their data. In your case to insert into a users YouTube account you need their permission.

API keys on the other hand are only used to get read only access access public data. You cant access a private user account with it.

Answer from Linda Lawton - DaImTo on Stack Overflow
๐ŸŒ
Google
developers.google.com โ€บ youtube โ€บ data api โ€บ upload a video
Upload a Video | YouTube Data API | Google for Developers
September 14, 2026 - This guide provides and explains a Python script that uploads a YouTube video using the YouTube Data API. The code uses the Google APIs Client Library for Python.
๐ŸŒ
GitHub
github.com โ€บ pillargg โ€บ youtube-upload
GitHub - pillargg/youtube-upload: Upload Youtube Videos and more via Python ยท GitHub
Upload Youtube Videos and more via Python. ... You can read more below and on the docs. This project uses the Youtube Data API.
Discussions

Python Youtube API v3 Uploading Video with API Key - Stack Overflow
Is it possible to upload videos to Youtube with python through the Youtube v3 API and an API Key? from googleapiclient.discovery import build from googleapiclient.http import MediaFileUpload API_K... More on stackoverflow.com
๐ŸŒ stackoverflow.com
google api - How can I simply use the Youtube API to Upload Videos? - Stack Overflow
Enable the YouTube Data API v3 for your project. Create OAuth 2.0 credentials (Client ID and Client Secret) for a desktop application. Use these credentials in your application. First of all you need a method to handle OAuth 2.0 authentication then you just need to add a method for uploading videos. Here's a example how you can implement a YouTubeAPI class in python ... More on stackoverflow.com
๐ŸŒ stackoverflow.com
YouTube API Upload Video
What error did you get when you tried the example? More on reddit.com
๐ŸŒ r/learnpython
5
1
August 11, 2022
Using Youtube API wrapper to Schedule Upload?
If this wrapper doesn't make that option available, you'll have to use the standard YouTube API. But you wouldn't want to try to use both, since they wouldn't talk to each other and you'd need to authenticate separately with both. More on reddit.com
๐ŸŒ r/learnpython
10
0
August 16, 2022
๐ŸŒ
Omi AI
omi.me โ€บ blogs โ€บ api-guides โ€บ how-to-use-youtube-data-api-to-upload-videos-in-python
How to Use YouTube Data API to Upload Videos in Python โ€“ Omi AI
November 5, 2024 - Start by downloading the OAuth 2.0 client credentials file from the Google API Console. Load the credentials in Python using the `google-auth` library. import os import google_auth_oauthlib.flow from google_auth_oauthlib.flow import InstalledAppFlow ...
๐ŸŒ
PyPI
pypi.org โ€บ project โ€บ simple-youtube-api
simple-youtube-api
JavaScript is disabled in your browser. Please enable JavaScript to proceed ยท A required part of this site couldnโ€™t load. This may be due to a browser extension, network issues, or browser settings. Please check your connection, disable any ad blockers, or try using a different browser
๐ŸŒ
GitHub
github.com โ€บ tokland โ€บ youtube-upload
GitHub - tokland/youtube-upload: Upload videos to Youtube from the command line ยท GitHub
Command-line script to upload videos to Youtube using theYoutube APIv3. It should work on any platform (GNU/Linux, BSD, OS X, Windows, ...) that runs Python.
๐ŸŒ
GitHub
github.com โ€บ youtube โ€บ api-samples โ€บ blob โ€บ master โ€บ python โ€บ upload_video.py
api-samples/python/upload_video.py at master ยท youtube/api-samples
Code samples for YouTube APIs, including the YouTube Data API, YouTube Analytics API, and YouTube Live Streaming API. The repo contains language-specific directories that contain the samples. - api-samples/python/upload_video.py at master ยท youtube/api-samples
Author: youtube
๐ŸŒ
Nono Martรญnez Alonso
nono.ma โ€บ upload-videos-to-youtube-data-api-python
Upload Videos to YouTube with the Data API in Python ยท Nono Martรญnez Alonso
October 18, 2022 - In the list of APIs, make sure the status is ON for the YouTube Data API v3. Go to the Credentials page and create one. ... Your project should now be showing in the dropdown next to Google Cloud Platform.
Find elsewhere
๐ŸŒ
Phyllo
getphyllo.com โ€บ home โ€บ blog โ€บ how to use youtube api to upload videos
How To Use YouTube API To Upload Videos | Phyllo
Upload videos with the YouTube API using videos.insert: OAuth 2.0 setup, a resumable Python upload, retry handling, and the 1,600 unit quota cost per upload.
๐ŸŒ
GitHub
github.com โ€บ davidrazmadzeExtra โ€บ YouTube_Python3_Upload_Video
GitHub - davidrazmadzeExtra/YouTube_Python3_Upload_Video: This guide provides and explains a Python script that uploads a YouTube video using the YouTube Data API. The code uses the Google APIs Client Library for Python. ยท GitHub
This guide provides and explains a Python script that uploads a YouTube video using the YouTube Data API. The code uses the Google APIs Client Library for Python. - GitHub - davidrazmadzeExtra/YouTube_Python3_Upload_Video: This guide provides ...
Author: davidrazmadzeExtra
๐ŸŒ
Medium
medium.com โ€บ @rfugaru92 โ€บ upload-video-to-youtube-using-data-api-and-python-48e6667b2817
Upload Video to YouTube using Data API and Python | by Radu Costin | Medium
January 11, 2023 - Then, we will use the Google API Python Client library to interact with the YouTube API and upload a video to a specific channel.
๐ŸŒ
Medium
medium.com โ€บ @nijmehar16 โ€บ uploading-videos-to-youtube-via-the-youtube-api-programmatically-which-uses-oauth-2-0-7317ec72411e
Uploading videos to youtube via the Youtube api programmatically using the refresh token provided by OAuth 2.0 | by Nijmehar | Medium
November 11, 2023 - # For more information about using OAuth2 to access the YouTube Data API, see: # https://developers.google.com/youtube/v3/guides/authentication # For more information about the client_secrets.json file format, see: # https://developers.goog...
๐ŸŒ
YouTube
youtube.com โ€บ watch
How to Upload Videos with the YouTube API (using Python) - YouTube
Learn how to upload a new video with the YouTube API and Python. This tutorial uses YouTube Data API v3.Check out videoflo on GitHub (and follow me there too...
Published: July 13, 2021
๐ŸŒ
YouTube
youtube.com โ€บ watch
How to Upload Videos to YouTube Using Python (YouTube API v3 Tutorial) - YouTube
Want to automate your YouTube uploads using Python? In this video, Iโ€™ll show you step-by-step how to upload a video to YouTube using the YouTube Data API v3!...
Published: June 13, 2025
๐ŸŒ
Toolify
toolify.ai โ€บ ai-news โ€บ learn-to-upload-videos-using-youtube-data-api-with-python-105182
Learn to Upload Videos using YouTube Data API with Python
December 26, 2023 - We covered the installation of necessary packages, creating a project on the Google Cloud Platform, enabling the YouTube Data API, configuring consent screen, creating credentials, obtaining client secrets JSON, updating the Python script, uploading videos to YouTube, and troubleshooting and verifying the application.
๐ŸŒ
Apify
apify.com โ€บ dami_studio โ€บ youtube-video-uploader โ€บ api โ€บ python
YouTube Video Uploader - Upload & Schedule, No Code API in Python ยท Apify
June 10, 2026 - The Apify API client for Python is the official library that allows you to use YouTube Video Uploader - Auto-Publish From Any URL API in Python, providing convenience functions and automatic retries on errors.
Rating: 5 โ€‹ - โ€‹ 1 votes
๐ŸŒ
Learn Data Analysis
learndataanalysis.org โ€บ home โ€บ how to upload a video to youtube using youtube data api in python
How to upload a video to YouTube using YouTube Data API in Python - Learn Data Analysis
January 18, 2022 - import datetime from Google import Create_Service from googleapiclient.http import MediaFileUpload CLIENT_SECRET_FILE = '<client file.json>' API_NAME = 'youtube' API_VERSION = 'v3' SCOPES = ['https://www.googleapis.com/auth/youtube.upload'] service = Create_Service(CLIENT_SECRET_FILE, API_NAME, API_VERSION, SCOPES) upload_date_time = datetime.datetime(2020, 12, 25, 12, 30, 0).isoformat() + '.000Z' request_body = { 'snippet': { 'categoryI': 19, 'title': 'Upload Testing', 'description': 'Hello World Description', 'tags': ['Travel', 'video test', 'Travel Tips'] }, 'status': { 'privacyStatus': 'pr
๐ŸŒ
Postproxy
postproxy.dev โ€บ home โ€บ blog โ€บ youtube upload api: videos & shorts (2026)
YouTube Upload API: Videos & Shorts (2026) | Postproxy
March 12, 2026 - Upload videos and Shorts to YouTube via API: OAuth setup, resumable uploads, quota limits, and code examples in Python and Node.js.
Top answer
1 of 1
1

Based on your requirements, it seems you're looking for a way to use the YouTube API for personal use without going through the extensive review process required for public applications. Unfortunately, there isn't a built-in way to restrict API access to local use only in the YouTube API.

However there is be a workaround for your needs:

  1. You can use the YouTube Data API v3 with OAuth 2.0 authentication for your personal Google account.
  2. This method allows you to create a project in the Google Developers Console and use the API without going through the verification process, as long as you're the only user.

Here's how you can set this up:

  1. Go to the Google Developers Console.
  2. Create a new project.
  3. Enable the YouTube Data API v3 for your project.
  4. Create OAuth 2.0 credentials (Client ID and Client Secret) for a desktop application.
  5. Use these credentials in your application.

First of all you need a method to handle OAuth 2.0 authentication then you just need to add a method for uploading videos.

Here's a example how you can implement a YouTubeAPI class in python to include a video upload method:

from googleapiclient.http import MediaFileUpload

class YouTubeAPI:

    def upload_video(self, file_path, title, description, category_id, privacy_status='private'):
        body = {
            'snippet': {
                'title': title,
                'description': description,
                'categoryId': category_id
            },
            'status': {
                'privacyStatus': privacy_status
            }
        }

        media = MediaFileUpload(file_path, resumable=True)

        request = self.youtube.videos().insert(
            part='snippet,status',
            body=body,
            media_body=media
        )

        response = request.execute()
        return response

Then you can add a new endpoint to handle video uploads. This setup allows you to use the YouTube API for personal use without going through the extensive review process. However, keep in mind:

  1. The API quota is limited for unverified apps.
  2. This should only be used for personal projects where you're the only user.
  3. You'll need to handle the OAuth flow manually

Include the necessary packages:

google-api-python-client
google-auth-oauthlib
google-auth-httplib2

as long as you're the only user of the application this solution can allow you to upload videos programmatically while avoiding the extensive review process. Good luck :)

๐ŸŒ
YouTube
youtube.com โ€บ watch
Upload Videos to YouTube with the Data API in Python - YouTube
How to use the YouTube Data API v3 to upload videos to your channel from Python scripts and the command line.๐Ÿ upload_video.py โ€บ https://github.com/nonoesp/...
Published: June 6, 2022