नमस्ते Analytics API: सेवा खातों के लिए PHP क्विकस्टार्ट

यह ट्यूटोरियल Google Analytics खाता ऐक्सेस करने, Analytics एपीआई के बारे में क्वेरी करने, एपीआई से मिले रिस्पॉन्स को मैनेज करने, और नतीजे देने के लिए ज़रूरी चरणों के बारे में बताता है. इस ट्यूटोरियल में, Core Reporting API v3.0, Management API v3.0, और OAuth2.0 का इस्तेमाल किया गया है.

पहला चरण: Analytics API चालू करना

Google Analytics API का इस्तेमाल शुरू करने से पहले, सेटअप टूल इस्तेमाल करना ज़रूरी है. यह आपको Google API Console में प्रोजेक्ट बनाने, एपीआई की सुविधा चालू करने, और क्रेडेंशियल बनाने के बारे में जानकारी देता है.

क्लाइंट आईडी बनाना

  1. सेवा खाते का पेज खोलें. पूछे जाने पर, प्रोजेक्ट चुनें.
  2. सेवा खाता बनाएं पर क्लिक करें, सेवा खाते का नाम और जानकारी डालें. आप डिफ़ॉल्ट सेवा खाता आईडी इस्तेमाल करें या फिर कोई दूसरा, अलग खाता आईडी चुनें. काम पूरा हो जाने पर, बनाएं पर क्लिक करें.
  3. इसके बाद आने वाले सेवा खाते की अनुमतियां (ज़रूरी नहीं) सेक्शन की ज़रूरत नहीं है. जारी रखें पर क्लिक करें.
  4. उपयोगकर्ताओं को इस खाते का ऐक्सेस दें स्क्रीन पर, नीचे कुंजी बनाएं सेक्शन तक स्क्रोल करें. कुंजी बनाएं पर क्लिक करें.
  5. दिखने वाले साइड पैनल में, अपनी कुंजी का फ़ॉर्मैट चुनें: JSON का सुझाव दिया जाता है.
  6. बनाएं पर क्लिक करें. आपकी नई सार्वजनिक/निजी कुंजी की जोड़ी जनरेट करके आपकी मशीन पर डाउनलोड की जाती है. यह इस कुंजी की अकेली कॉपी की तरह काम करती है. इसे सुरक्षित तौर पर कैसे सेव किया जाए, इसकी जानकारी के लिए, सेवा खाता कुंजियां मैनेज करें देखें.
  7. आपके कंप्यूटर पर सेव की गई निजी कुंजी डायलॉग पर, बंद करें पर क्लिक करें. इसके बाद, अपने सेवा खातों की टेबल पर वापस लौटने के लिए, हो गया पर क्लिक करें.

Google Analytics खाते में सेवा खाता जोड़ें

नए सेवा खाते में ईमेल पता <projectId>-<uniqueId>@developer.gserviceaccount.com होगा; इस ईमेल पते का इस्तेमाल करके, एपीआई के ज़रिए ऐक्सेस किए जाने वाले Google Analytics खाते में किसी उपयोगकर्ता को जोड़ें. सिर्फ़ इस ट्यूटोरियल के लिए, पढ़ने और विश्लेषण करने की अनुमतियां ज़रूरी हैं.

दूसरा चरण: Google क्लाइंट लाइब्रेरी इंस्टॉल करना

आपके पास PHP के लिए Google API क्लाइंट लाइब्रेरी रिलीज़ डाउनलोड करने या कंपोज़र का इस्तेमाल करने का विकल्प है:

composer require google/apiclient:^2.0

तीसरा चरण: सैंपल सेटअप करना

आपको HelloAnalytics.php नाम की एक फ़ाइल बनानी होगी, जिसमें नीचे दिया गया सैंपल कोड शामिल होगा.

  1. इस सोर्स कोड को HelloAnalytics.php में कॉपी या डाउनलोड करें.
  2. पहले डाउनलोड किए गए service-account-credentials.json को उसी डायरेक्ट्री में ले जाएं जिसमें सैंपल कोड मौजूद है.

HelloAnalytics.php

<?php

// Load the Google API PHP Client Library.
require_once __DIR__ . '/vendor/autoload.php';

$analytics = initializeAnalytics();
$profile = getFirstProfileId($analytics);
$results = getResults($analytics, $profile);
printResults($results);

function initializeAnalytics()
{
  // Creates and returns the Analytics Reporting service object.

  // Use the developers console and download your service account
  // credentials in JSON format. Place them in this directory or
  // change the key file location if necessary.
  $KEY_FILE_LOCATION = __DIR__ . '/service-account-credentials.json';

  // Create and configure a new client object.
  $client = new Google_Client();
  $client->setApplicationName("Hello Analytics Reporting");
  $client->setAuthConfig($KEY_FILE_LOCATION);
  $client->setScopes(['https://www.googleapis.com/auth/analytics.readonly']);
  $analytics = new Google_Service_Analytics($client);

  return $analytics;
}

function getFirstProfileId($analytics) {
  // Get the user's first view (profile) ID.

  // Get the list of accounts for the authorized user.
  $accounts = $analytics->management_accounts->listManagementAccounts();

  if (count($accounts->getItems()) > 0) {
    $items = $accounts->getItems();
    $firstAccountId = $items[0]->getId();

    // Get the list of properties for the authorized user.
    $properties = $analytics->management_webproperties
        ->listManagementWebproperties($firstAccountId);

    if (count($properties->getItems()) > 0) {
      $items = $properties->getItems();
      $firstPropertyId = $items[0]->getId();

      // Get the list of views (profiles) for the authorized user.
      $profiles = $analytics->management_profiles
          ->listManagementProfiles($firstAccountId, $firstPropertyId);

      if (count($profiles->getItems()) > 0) {
        $items = $profiles->getItems();

        // Return the first view (profile) ID.
        return $items[0]->getId();

      } else {
        throw new Exception('No views (profiles) found for this user.');
      }
    } else {
      throw new Exception('No properties found for this user.');
    }
  } else {
    throw new Exception('No accounts found for this user.');
  }
}

function getResults($analytics, $profileId) {
  // Calls the Core Reporting API and queries for the number of sessions
  // for the last seven days.
   return $analytics->data_ga->get(
       'ga:' . $profileId,
       '7daysAgo',
       'today',
       'ga:sessions');
}

function printResults($results) {
  // Parses the response from the Core Reporting API and prints
  // the profile name and total sessions.
  if (count($results->getRows()) > 0) {

    // Get the profile name.
    $profileName = $results->getProfileInfo()->getProfileName();

    // Get the entry for the first entry in the first row.
    $rows = $results->getRows();
    $sessions = $rows[0][0];

    // Print the results.
    print "First view (profile) found: $profileName\n";
    print "Total sessions: $sessions\n";
  } else {
    print "No results found.\n";
  }
}


चौथा चरण: सैंपल चलाएं

Analytics API चालू करने के बाद, PHP के लिए Google API क्लाइंट लाइब्रेरी इंस्टॉल करें. और सैंपल सोर्स कोड सेट अप करें, ताकि सैंपल चलाने के लिए तैयार हो.

सैंपल को चलाने के लिए, इनका इस्तेमाल करें:

php HelloAnalytics.php

इन चरणों को पूरा करने के बाद, सैंपल, अनुमति वाले उपयोगकर्ता के पहले Google Analytics व्यू (प्रोफ़ाइल) का नाम और पिछले सात दिनों के सेशन की संख्या दिखाता है.

अनुमति वाले Analytics सेवा ऑब्जेक्ट की मदद से, अब आप Management API रेफ़रंस दस्तावेज़ में मिलने वाले किसी भी कोड सैंपल को चला सकते हैं. उदाहरण के लिए, आप accountSummaries.list तरीके का इस्तेमाल करने के लिए, कोड को बदलकर देख सकते हैं.