Porting Authenticated users to new YouTube Application - youtube

Say I have an application with a specific URL and API keys with 100 Authenticated YouTube users. If wanted to rebrand the app (new URL and API keys) is it possible to have the authenticated users ported over to the new application if it can be proven it is the same offerings but with a rebranding?
Thanks,
#tedsf

If you're going to use a new set of Client ID / secret, then unfortunately, users will have to reauthorize with your application.

Related

Can't select Youtube manager account when creating refresh token

We are currently trying to setup a youtube refresh token for a youtube channel of which we only have a manager account with admin rights.
Sadly this does not seem to work currently. Are we correct in the assumption that currently only the owner of a youtube channel is able to request a refresh token?
Or is this something we can also somehow request as only a channel manager? In case that is possible what do we need to do to make it work from a manger account?
We already asked this question to the Adwords API Team but they could only send us here, you can see the thread here: https://groups.google.com/u/1/g/adwords-api/c/iTOfy7-Sfm8
Cheers,
InnoGames Dev Marketing Team
To create a new refresh token we are using a URL like this: "
https://oauth2.googleapis.com/token?code=#CODE#&client_id=#CLIENT_ID#&client_secret=#CLIENT_SECRET#&grant_type=authorization_code "
With the scope "https://www.googleapis.com/auth/youtube" to generate a new token.
The way we are using it currently will ask us to select a google account in the typical google login form. But there we can only select our manager account but not the youtube channel if want to generate the token for.

How to make calls to youtube Api with user Api key

I will be building a spring-boot app that consumes resource from the Youtube Api. However, I discovered that the youtube API has a limit of resource that can be consumed by one API key.
This will be a multi user app, So i'll like to build out the functionality in which when a user signs into the app via gmail, the user's API will automatically be used to consume resources from the youtube API , without the user having to go digging into the Youtube API documentation to get there API key.
Any ideas of how to automatically enable a new user’s api key to make the call , instead of my api key ?
Thanks in advance.
I discovered that the youtube API has a limit of resource that can be consumed by one API key.
This is called quota and its not related to the API key but rather related to the project. You have a quota limiting the number of requests that your project can make against the API. see quota calculator
This will be a multi user app, So i'll like to build out the functionality in which when a user signs into the app via gmail, the user's API will automatically be used to consume resources from the youtube API , without the user having to go digging into the Youtube API documentation to get there API key.
If you want to allow a user to login to their YouTube api account then you will be using Oauth2 client credentials and not an API key. The API key will only allow you to access public data no private data will be available.
Any ideas of how to automatically enable a new user’s api key to make the call , instead of my api key ?
API keys are not user specific you cant create a new user api key. Thats not how API keys work, api keys enable your application to access public data on YouTube it is defined by you manually though the Google developer console and identifies your application to Google.

YouTube API to upload to Business Channel

Is there any way of using the YouTube API so that users can upload videos directly to my business YouTube channel? Users would grant permission to upload to my channel on the website. I want to avoid uploading to another server, then to YouTube if possible.
Thanks
You can use service account OAuth2 to authorize requests from your app on your behalf to a channel that your account is authorized to access/the owner of.
Create service account credentials: (documentation here)
and make sure the YouTube Data API v3 is enabled on your API
project (getting started guide here, if you're new to the API).
Use your service account OAuth credentials to call the upload API: (documentation here) use the auth in step 1 to upload the video your users share with you and specify your business YouTube channel ID in the video resource. Sample code in various languages here (just search for upload examples after you choose your preferred language).
Things to keep in mind:
If you enable uploads to your channel by end users but don't do any checking/validation there is potential for abuse
service account OAuth is valid for 1 year, so you'd need to refresh the service account credentials every year
It will look like these videos are being uploaded by your business channel and not other user's channels (because that's what's happening via the API).

Youtube API - Upload to known accounts?

I am looking for a way to upload videos from a web service to a handful of known Youtube accounts where I am the owner (have login/pw credentials).
For instance, when a video is uploaded to this site, it should also upload to Youtube accounts A, B, and C via the API.
It seems that Youtube has an old method for authenticating accounts in this manner called ClientLogin, but it has been deprecated as of 2012 and in fact no longer works consistently (significant problems popping up as of April 2013).
(ClientLogin Docs)
The new recommended protocol is oAuth 2.0 (docs), but I am struggling to understand - is this workflow possible via oAuth authentication? If not, is there an alternative that could handle it?
If you have a CMS account managing those account, you can do.
Currently service accounts are not working with Data API v3, hope to have them back soon.
Instead of storing login/pw credentials you must store login/refresh-token. With the refresh-token you request a new access-token after the current one has expired (after 1 hour)
The main difference is for the first time, you have to ask user to give you authorization via browser.
You can store the tokens and while you are calling the APi method, you can set the token in call to upload to that user's account

Confusion on the Old Google Data AP, new Google API, and the Google Apps Marketplace

Currently Google is migrating their old Google Data API to the new Google API.
When we do API queries over the old Google Data API, we usually use Zend Framework and the given consumer key/secret to do the authen/autho, which is fine.
Question is, is it possible to use the given consumer key/secret (from the Google Apps Marketplace listing) and the new OAuth 2 Library to call the API? What I have been having is the error message redirect_uri mismatched issue and obviously Google Apps Marketplace provides no way to change this value. Even though they had provided a link for us to go to the API Console from the listing page, I cannot see the OAuth 2.0 options in my API Access page at all.
Did I missed out anything?
If let's say I need to use the Google Apps Admin Settings API, does it mean I need to separately create a new OAuth 2.0 API Access in the API Console, then, when I need to access user data, I need to do the Auth flow again using this new consumer key/secret/redirect? I can't set this permission in the Listing Manifest? (Not supported?)
Thanks for the clarifications!
Google Apps Admin Settings is not yet migrated to the new google-api, AFAICS. Check out this list : http://code.google.com/p/google-api-java-client/wiki/APIs ;
you can however use the new google-api client libraries but you have to roll your own XML model for the given API, it is not so hard, I did a similar thing for the Contact API;
The consumer/key secret can be re-used normally if it is sufficiently scoped. A related project for your market app is automatically created in the Google Api console from what I remember..

Resources