Creating a YouTube channel
Stay organized with collections
Save and categorize content based on your preferences.
This document explains the process of spawning an Android WebView
, iOS UIWebView
, or similar object, to allow a user to create a YouTube channel and then return control to your application. Your application should implement this flow to handle API errors that occur when a user with an unlinked Google Account tries to complete an action that actually requires a YouTube channel.
Note: As discussed in the Developer's Guide, a user who has a Google Account but does not have a YouTube channel is identified as having an unlinked Google Account. Such users can access many YouTube features that are dependent on user authorization, such as the ability to create playlists or rate videos. However, those users cannot upload videos to YouTube without first creating a YouTube channel.
Use case
The following steps explain the use case:
-
A user with an unlinked Google Account tries to complete an action that requires a YouTube channel. Your application sends an authorized API request for that action.
-
YouTube returns a youtubeSignupRequired
error, indicating that the user must sign up for a YouTube account to complete the requested action.
-
Your application launches a WebView
or equivalent that loads the following URL:
https://m.youtube.com/create_channel?chromeless=1&next=/channel_creation_done
This page enables the user to log in and create a YouTube channel.
-
Your application monitors the WebView
to determine when its location changes to the following URL, which indicates that the user's Google Account has been linked to a YouTube channel.
https://m.youtube.com/channel_creation_done
-
Your application closes the WebView
and resends the authorized API request from step 1.
If the user closes the WebView
without completing the steps to create a YouTube channel, then your application will not be able to resend the API request from step 1 and have it succeed. In this case, your application could reiterate that the user will need to create a YouTube channel to complete the requested action.
Additional resources
The following resources may help you to implement this flow in your application:
-
Android developers
-
iOS developers
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-28 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eUsers with Google accounts but without YouTube channels may encounter errors when performing actions requiring a YouTube channel.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers should implement a process to handle the \u003ccode\u003eyoutubeSignupRequired\u003c/code\u003e error by directing users to create a channel.\u003c/p\u003e\n"],["\u003cp\u003eThis process involves launching a WebView or similar object to a specific YouTube URL for channel creation.\u003c/p\u003e\n"],["\u003cp\u003eApplications should monitor the WebView for a specific URL indicating channel creation completion before resending the initial API request.\u003c/p\u003e\n"],["\u003cp\u003eIf the user abandons channel creation, the application should inform them about the requirement to complete the action.\u003c/p\u003e\n"]]],["When an unlinked Google Account user attempts an action requiring a YouTube channel, the application receives a `youtubeSignupRequired` error. The application then opens a `WebView` to `https://m.youtube.com/create_channel?chromeless=1&next=/channel_creation_done`, enabling channel creation. Upon the `WebView`'s URL changing to `https://m.youtube.com/channel_creation_done`, the application closes it and resends the original API request. If the user closes the `WebView` without creating a channel, the action fails.\n"],null,["# Creating a YouTube channel\n\nThis document explains the process of spawning an Android `WebView`, iOS `UIWebView`, or similar object, to allow a user to create a YouTube channel and then return control to your application. Your application should implement this flow to handle API errors that occur when a user with an unlinked Google Account tries to complete an action that actually requires a YouTube channel.\n\n**Note:** As discussed in the [Developer's Guide](/youtube/2.0/developers_guide_protocol_audience#API_Versioning), a user who has a Google Account but does not have a YouTube channel is identified as having an **unlinked Google Account**. Such users can access many YouTube features that are dependent on user authorization, such as the ability to create playlists or rate videos. However, those users cannot upload videos to YouTube without first creating a YouTube channel.\n\nUse case\n--------\n\nThe following steps explain the use case:\n\n1. A user with an unlinked Google Account tries to complete an action that requires a YouTube channel. Your application sends an authorized API request for that action.\n\n2. YouTube returns a [youtubeSignupRequired](/youtube/v3/docs/errors#youtube.api.RequestContextError-unauthorized-youtubeSignupRequired) error, indicating that the user must sign up for a YouTube account to complete the requested action.\n\n3. Your application launches a `WebView` or equivalent that loads the following URL:\n\n ```\n https://m.youtube.com/create_channel?chromeless=1&next=/channel_creation_done\n ```\n\n This page enables the user to log in and create a YouTube channel.\n4. Your application monitors the `WebView` to determine when its location changes to the following URL, which indicates that the user's Google Account has been linked to a YouTube channel.\n\n ```\n https://m.youtube.com/channel_creation_done\n ```\n5. Your application closes the `WebView` and resends the authorized API request from step 1.\n\nIf the user closes the `WebView` without completing the steps to create a YouTube channel, then your application will not be able to resend the API request from step 1 and have it succeed. In this case, your application could reiterate that the user will need to create a YouTube channel to complete the requested action.\n\nAdditional resources\n--------------------\n\nThe following resources may help you to implement this flow in your application:\n\n- **Android developers**\n\n \u003cbr /\u003e\n\n - [WebView](http://developer.android.com/reference/android/webkit/WebView.html) class documentation\n - [Building Web Apps in WebView](http://developer.android.com/guide/webapps/webview.html)\n\n \u003cbr /\u003e\n\n- **iOS developers**\n\n \u003cbr /\u003e\n\n - [Google Toolbox for Mac - OAuth 2.0 controllers](https://github.com/google/gtm-oauth2) -- This project demonstrates how to launch an OAuth 2.0 authorization flow in a `UIWebView`, which is a similar operation to the one described in this document.\n\n \u003cbr /\u003e"]]