Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Youtube Content Owner Data Transfer Service permissions error

Hello! I am trying to set up a Youtube Content Owner Report DTS in BigQuery and having some issues with authorization and hoping someone can shed some light on what could be going wrong.

For background:

  • I am pulling data for internal use only, but do not have the necessary verified oauth2 app  to do this programmatically, so hoping to pull this data via the DTS.
  • I have, however, been successfully able to pull a content owner report in the Google API playground, so I do know that indeed my Youtube account is properly configured, has a content owner and I do have the permissions necessary to pull data from it.

When configuring the DTS and running it I get the following error:

Http(403) Forbidden; { "error": { "code": 403, "message": "The caller does not have permission", "errors": [ { "message": "The caller does not have permission", "domain": "global", "reason": "forbidden", "debugInfo": "detail: \"[ORIGINAL ERROR] generic::permission_denied: com.google.apps.framework.request.CanonicalCodeException: User does not have access to content owner: gaiaId: XXXX, contentOwner: XXXX. Code: PERMISSION_DENIED\"\n" } ], "status": "PERMISSION_DENIED", "details": [ { "@type": "type.googleapis.com/google.rpc.DebugInfo", "detail": "[ORIGINAL ERROR] generic::permission_denied: com.google.apps.framework.request.CanonicalCodeException: User does not have access to content owner: gaiaId: XXXX, contentOwner: XXXX. Code: PERMISSION_DENIED" } ] } } ; Request to YouTube reporting API failed for method GET_JOBS

Is there a way to verify that the DTS is using the correct credentials?

Thanks!

0 2 708
2 REPLIES 2

To verify if the DTS is using the correct credentials, you can follow these steps:

  1. Confirm that you are using a service account associated with your Google Cloud project to access the BigQuery API. Service accounts are recommended for applications that run jobs associated with service credentials.
  2. Ensure that you have authenticated your client using the appropriate method. You can authenticate with Application Default Credentials or a service account key file.
  3. After authentication, you need to pass an access token to the BigQuery API to authorize your client's access to the requested resources. If you are using the BigQuery client libraries, this is done automatically for you.
  4. If you are not using the client libraries, you can learn how to use access tokens in the authorization guide to manually pass the access token to the BigQuery API.

Hi @ggscn 

You may try third party tools. E.g. import YouTube data into windsor.ai and export the data into BigQuery.

wondsor.ai youtube.png