0

I want to start developing a tool that runs daily via cron for getting daily analytical data from one channel, or video, etc.. through the "Youtube Analytics API". And not what is the best way to approach it.

I have read the documentation of Google and and I have several questions:

    • I created the project in the console (https://code.google.com/apis/console/) but I doubt what kind of application I have to choose when I create a Client ID (Web Application, Service Account or Installed aplplication).
    • What PHP library use? It's a very new API and not much information. In the Google GData site there is a warning about that "Most newer Google APIs Google Data APIs are not Google Data APIs." and in the google-api-php-client, no examples of this API.
    • What is the best method for authentication in a cron?

As you can see I am very confuse, can someone help me, please?

Thank you.

cmaciasg
  • 71
  • 2
  • 11
  • 1
    Although the Google API Client Library for PHP is still officially in Beta testing I would say that is a much safer bet than starting from scratch and "rolling your own". https://code.google.com/p/google-api-php-client/ – crmpicco Oct 29 '13 at 11:04
  • Thank you for your response. And abusing your kindness, :), what do you think of the other two questions? – cmaciasg Oct 29 '13 at 11:10
  • Can you elaborate on what you mean by `What is the best method for authentication in a cron?` – crmpicco Oct 29 '13 at 11:28
  • Of course, In a web application, the user have to authenticate and get permission to access to the aplication data. A login popup is shown and the user log in. But in a cron not be possible show the login popup. – cmaciasg Oct 29 '13 at 12:34
  • As the cron will be your code, running on your server there's no need to have a login pop-up or any user input at all. Just have the username, password, login key etc, anything you need to access the API in the code itself. Or you could pass it through as a parameter to your cron script, e.g. `/path/to/cron/script.php -- --` – crmpicco Oct 29 '13 at 13:36

1 Answers1

1

1) It will be an installed application unless you will run it in a web server.

2) Use the official library, add the ytanalytics php library. Samples: https://github.com/youtube/yt-samples-php

3) You can do so by getting a refresh token from OAuth2 Playground and setting it in your youtube object.

Here it explains a little more.

And a step by step video.

Ibrahim Ulukaya
  • 12,767
  • 1
  • 33
  • 36
  • Regarding the first point: the cron will invoke a php script, I guess even a php script not running on a web server, right? – cmaciasg Nov 04 '13 at 08:25
  • yes, if you watch the video, you will see, with the token from OAuth2 playground, it won't try to open browser at all/ – Ibrahim Ulukaya Nov 04 '13 at 14:03