Google Analytics ডেটা API v1-এ স্থানান্তরিত হচ্ছে

এই নথিটি Google Analytics রিপোর্টিং API v4 থেকে Google Analytics ডেটা API v1-এ বিদ্যমান কোড কীভাবে স্থানান্তর করতে হয় তার নির্দেশাবলী প্রদান করে এবং দুটি API-এর মধ্যে মূল পার্থক্যগুলির একটি সংক্ষিপ্ত বিবরণ দেয়।

কেন আমি মাইগ্রেট করতে হবে

আপনার অ্যাপ্লিকেশানের যদি Google Analytics 4 প্রপার্টিতে ডেটা অ্যাক্সেস করার প্রয়োজন হয়, তাহলে ডেটা API v1 ব্যবহার করার জন্য কোডটি আপডেট করতে হবে, কারণ Reporting API v4 শুধুমাত্র ইউনিভার্সাল অ্যানালিটিক্সের মাধ্যমে তৈরি প্রপার্টি অ্যাক্সেস করতে পারে।

পূর্বশর্ত

দ্রুত শুরু নির্দেশিকা ব্যবহার করে Data API v1 এর মৌলিক বিষয়গুলির সাথে নিজেকে পরিচিত করুন৷

শুরু হচ্ছে

শুরু করার জন্য, আপনি একটি Google Analytics 4 প্রপার্টি প্রস্তুত করবেন, Data API v1 সক্ষম করবেন এবং তারপর আপনার প্ল্যাটফর্মের জন্য উপযুক্ত একটি API ক্লায়েন্ট লাইব্রেরি সেট আপ করবেন।

একটি Google Analytics 4 প্রপার্টি প্রস্তুত করুন

ডেটা API v1 সমর্থন করার জন্য আপনার কোড স্থানান্তর করা শুরু করার আগে, আপনাকে Google Analytics 4 প্রপার্টি ব্যবহার করতে আপনার ওয়েবসাইট স্থানান্তর করতে হবে। ইউনিভার্সাল অ্যানালিটিক্স প্রপার্টি থেকে ঐতিহাসিক ডেটা দিয়ে Google Analytics 4 প্রপার্টি ব্যাকফিল করা সম্ভব নয়।

API সক্ষম করুন

আপনার নির্বাচিত Google ক্লাউড প্রকল্পে ডেটা API v1 স্বয়ংক্রিয়ভাবে সক্ষম করতে এই বোতামটি ক্লিক করুন৷

Google Analytics ডেটা API v1 সক্ষম করুন৷

একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার করে

একটি ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন

আপনি যদি একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার করেন, তাহলে আপনাকে আপনার প্রোগ্রামিং ভাষার জন্য ডেটা API v1 ক্লায়েন্ট লাইব্রেরি ইনস্টল করতে হবে।

একটি ক্লায়েন্ট লাইব্রেরি শুরু করুন

ডেটা API v1 ক্লায়েন্ট লাইব্রেরিগুলি আপনাকে দ্রুত শুরু করার জন্য ডিজাইন করা হয়েছে৷ ডিফল্টরূপে, ক্লায়েন্ট লাইব্রেরিগুলি স্বয়ংক্রিয়ভাবে আপনার পরিষেবা অ্যাকাউন্টের শংসাপত্রগুলি খুঁজে বের করার চেষ্টা করে

পরিষেবা অ্যাকাউন্টের শংসাপত্রগুলি প্রদান করার একটি সহজ উপায় হল GOOGLE_APPLICATION_CREDENTIALS এনভায়রনমেন্ট ভেরিয়েবল সেট করা, API ক্লায়েন্ট পরিষেবা অ্যাকাউন্ট কী JSON ফাইলটি খুঁজে পেতে এই ভেরিয়েবলের মান ব্যবহার করবে৷

উদাহরণস্বরূপ, আপনি নিম্নলিখিত কমান্ডটি চালিয়ে এবং পরিষেবা অ্যাকাউন্ট JSON ফাইলের পাথ ব্যবহার করে পরিষেবা অ্যাকাউন্টের শংসাপত্র সেট করতে পারেন:

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

নীচে কোড স্নিপেটগুলি সাধারণত ডেটা API v1 ক্লায়েন্ট লাইব্রেরিগুলি শুরু করতে ব্যবহৃত হয়৷

জাভা

    // Using a default constructor instructs the client to use the credentials
    // specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
    try (BetaAnalyticsDataClient analyticsData = BetaAnalyticsDataClient.create()) {

পাইথন

    # Using a default constructor instructs the client to use the credentials
    # specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
    client = BetaAnalyticsDataClient()

.নেট

            // Using a default constructor instructs the client to use the credentials
            // specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
            BetaAnalyticsDataClient client = BetaAnalyticsDataClient.Create();

পিএইচপি

// Using a default constructor instructs the client to use the credentials
// specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
$client = new BetaAnalyticsDataClient();

Node.js

  // Imports the Google Analytics Data API client library.
  const {BetaAnalyticsDataClient} = require('@google-analytics/data');

  // Using a default constructor instructs the client to use the credentials
  // specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
  const analyticsDataClient = new BetaAnalyticsDataClient();

একটি এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করার পরিবর্তে, প্রারম্ভের সময় স্পষ্টভাবে একটি API ক্লায়েন্ট ইনস্ট্যান্সে শংসাপত্রের তথ্য পাস করাও সম্ভব। নীচে কোডে স্পষ্টভাবে শংসাপত্রগুলি পাস করে ডেটা API v1 ক্লায়েন্ট লাইব্রেরিগুলি শুরু করতে ব্যবহৃত স্নিপেটগুলি রয়েছে৷

জাভা

    // Explicitly use service account credentials by specifying
    // the private key file.
    GoogleCredentials credentials =
        GoogleCredentials.fromStream(new FileInputStream(credentialsJsonPath));

    BetaAnalyticsDataSettings betaAnalyticsDataSettings =
        BetaAnalyticsDataSettings.newBuilder()
            .setCredentialsProvider(FixedCredentialsProvider.create(credentials))
            .build();

    try (BetaAnalyticsDataClient analyticsData =
        BetaAnalyticsDataClient.create(betaAnalyticsDataSettings)) {

পাইথন

    # TODO(developer): Uncomment this variable and replace with a valid path to
    #  the credentials.json file for your service account downloaded from the
    #  Cloud Console.
    # credentials_json_path = "/path/to/credentials.json"

    # Explicitly use service account credentials by specifying
    # the private key file.
    client = BetaAnalyticsDataClient.from_service_account_json(credentials_json_path)

.নেট

            /**
             * TODO(developer): Uncomment this variable and replace with a valid path to
             *  the credentials.json file for your service account downloaded from the
             *  Cloud Console.
             *  Otherwise, default service account credentials will be derived from
             *  the GOOGLE_APPLICATION_CREDENTIALS environment variable.
             */
            // credentialsJsonPath = "/path/to/credentials.json";

            // Explicitly use service account credentials by specifying
            // the private key file.
            BetaAnalyticsDataClient client = new BetaAnalyticsDataClientBuilder
            {
              CredentialsPath = credentialsJsonPath
            }.Build();

পিএইচপি

/**
 * @param string $credentialsJsonPath Valid path to the credentials.json file for your service
 *                                    account downloaded from the Cloud Console.
 *                                    Example: "/path/to/credentials.json"
 */
function client_from_json_credentials(string $credentialsJsonPath)
{
    // Explicitly use service account credentials by specifying
    // the private key file.
    $client = new BetaAnalyticsDataClient([
        'credentials' => $credentialsJsonPath
    ]);

    return $client;
}

Node.js

  /** TODO(developer): Uncomment this variable and replace with a valid path to
   *  the credentials.json file for your service account downloaded from the
   *  Cloud Console.
   */
  // credentialsJsonPath = '/path/to/credentials.json';

  // Imports the Google Analytics Data API client library.
  const {BetaAnalyticsDataClient} = require('@google-analytics/data');

  // Explicitly use service account credentials by specifying
  // the private key file.
  const analyticsDataClient = new BetaAnalyticsDataClient({
    keyFilename: credentialsJsonPath,
  });

একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার না

আপনি যদি ক্লায়েন্ট লাইব্রেরি ছাড়াই রিপোর্টিং API v4 ব্যবহার করেন এবং ডেটা API v1 এর সাথে এটি চালিয়ে যেতে চান তবে আপনি এখনও আপনার শংসাপত্রগুলি ব্যবহার করতে পারেন৷

আপনাকে ডেটা API দ্বারা প্রদত্ত নতুন HTTP এন্ডপয়েন্ট এবং আবিষ্কার নথি ব্যবহার করতে হবে:

যদি আপনার কোড একটি ডিসকভারি ডকুমেন্টের সুবিধা নিচ্ছে, তাহলে আপনাকে ডেটা API v1 দ্বারা প্রদত্ত ডিসকভারি ডকুমেন্টে আপডেট করতে হবে:

এন্ডপয়েন্ট আপডেট করার পর, আপনার JSON কোয়েরি আপডেট করার জন্য আপনাকে নতুন অনুরোধের কাঠামো এবং ডেটা API-এর ধারণার সাথে নিজেকে পরিচিত করতে হবে।

কোর রিপোর্টিং

উপলব্ধ রিপোর্টিং পদ্ধতি

রিপোর্টিং API v4 তার মূল রিপোর্টিং কার্যকারিতা অ্যাক্সেস করার জন্য একটি একক পদ্ধতি ব্যাচগেট অফার করেছে। ডেটা API v1 বেছে নেওয়ার জন্য বেশ কয়েকটি মূল রিপোর্টিং পদ্ধতি প্রদান করে:

  • runReport এই পদ্ধতিটি আপনার Google Analytics ইভেন্ট ডেটার একটি কাস্টমাইজড রিপোর্ট প্রদান করে। এটি পিভট কার্যকারিতা সমর্থন করে না এবং সাধারণ প্রতিবেদন প্রশ্নের জন্য এটি একটি পছন্দের পদ্ধতি।
  • runPivotReport এই পদ্ধতিটি আপনার Google Analytics ইভেন্ট ডেটার একটি কাস্টমাইজড পিভট রিপোর্ট প্রদান করে। রিপোর্টিং API v4-এর পিভটের মতো, প্রতিটি পিভট রিপোর্ট প্রতিক্রিয়ায় দৃশ্যমান মাত্রা কলাম এবং সারি বর্ণনা করে।
  • batchRunReports এটি runReport পদ্ধতির একটি ব্যাচ সংস্করণ যা একটি একক API কল ব্যবহার করে একাধিক প্রতিবেদন তৈরি করতে দেয়।
  • batchRunPivotReports এটি runPivotReport পদ্ধতির একটি ব্যাচ সংস্করণ যা একটি একক API কল ব্যবহার করে একাধিক প্রতিবেদন তৈরি করতে দেয়।

বিভিন্ন রিপোর্টিং পদ্ধতি থাকার উদ্দেশ্য হল বেশিরভাগ সুবিধা, কিছু পদ্ধতি অন্যদের (পিভট, ব্যাচিং) তুলনায় আরও জটিল বৈশিষ্ট্য সমর্থন করে, কিন্তু অন্যথায় অনুরূপ অনুরোধ কাঠামো ভাগ করে।

API স্কিমা পরিবর্তন

রিপোর্টিং এপিআই এবং ডেটা এপিআই উভয়ের রিপোর্টিং ক্ষমতা প্রাথমিকভাবে তাদের স্কিমা দ্বারা নির্ধারিত হয়, যেমন মাত্রা এবং মেট্রিক্স রিপোর্টিং কোয়েরিতে সমর্থিত। ইউনিভার্সাল অ্যানালিটিক্স এবং গুগল অ্যানালিটিক্স 4-এর মধ্যে ধারণাগত পার্থক্যের কারণে দুটি API-এর মধ্যে API স্কিমাগুলিতে উল্লেখযোগ্য পার্থক্য রয়েছে।

  • ডেটা API দ্বারা সমর্থিত মাত্রা এবং মেট্রিক্সের বর্তমান তালিকার সাথে নিজেকে পরিচিত করুন। বর্তমানে, সমস্ত মাত্রা এবং মেট্রিক্স একে অপরের সাথে সামঞ্জস্যপূর্ণ, তাই সামঞ্জস্যপূর্ণ সমন্বয় নির্ধারণ করতে মাত্রা এবং মেট্রিক্স এক্সপ্লোরার ব্যবহার করার প্রয়োজন নেই। ভবিষ্যতে এই আচরণ পরিবর্তন হবে।
  • Google Analytics 4-এ কাস্টম মাত্রাগুলি ডেটা API v1 কাস্টম মাত্রা সিনট্যাক্স ব্যবহার করে অ্যাক্সেস করা যেতে পারে, যা রিপোর্টিং API v4-এর ga:dimensionXX মাত্রা স্লটের পরিবর্তে ব্যবহার করা উচিত।
  • Google Analytics 4-এ কাস্টম মেট্রিকগুলি ডেটা API v1 কাস্টম মেট্রিক্স সিনট্যাক্স ব্যবহার করে অ্যাক্সেস করা যেতে পারে, যা রিপোর্টিং API v4-এর ga:metricXX মেট্রিক স্লটের পরিবর্তে ব্যবহার করা উচিত।
  • ইউনিভার্সাল অ্যানালিটিক্সে পাওয়া নির্দিষ্ট মাত্রা এবং মেট্রিক্সের Google Analytics 4-এ সরাসরি সমতুল্য রয়েছে। আরও তথ্যের জন্য UA/GA4 API স্কিমা সমতুলতা চার্ট দেখুন।
  • Google Analytics 4-এ মাত্রা এবং মেট্রিক নামের আর ga: উপসর্গ নেই।
  • ইউনিভার্সাল অ্যানালিটিক্সে উপস্থিত কিছু কার্যকারিতা এখনও GA4-এ উপলব্ধ নয় (যেমন ক্যাম্পেইন ম্যানেজার, DV360, Search Ads 360 ইন্টিগ্রেশন)। একবার এই কার্যকারিতা Google Analytics 4 এ প্রয়োগ করা হলে, ডেটা API এটিকে সমর্থন করবে, API স্কিমাতে নতুন মাত্রা এবং মেট্রিক্স যোগ করা হবে।

সত্তা

গুগল অ্যানালিটিক্স 4 ইউনিভার্সাল অ্যানালিটিক্সে প্রবর্তিত ভিউ (প্রোফাইল) এর কোন ধারণা নেই। ফলস্বরূপ, ডেটা API v1 রিপোর্টিং অনুরোধের কোথাও কোনো viewId প্যারামিটার নেই। পরিবর্তে, ডেটা API v1 পদ্ধতিতে কল করার সময় একটি অনুরোধ URL পাথে একটি সংখ্যাসূচক Google Analytics 4 প্রপার্টি আইডি উল্লেখ করা উচিত। এই আচরণ রিপোর্টিং API v4 থেকে ভিন্ন, যা রিপোর্টিং সত্তা সনাক্ত করতে ভিউ (প্রোফাইল) আইডির উপর নির্ভর করে।

ডেটা API v1

ডেটা API v1-এর ক্ষেত্রে, URL পাথে একটি সাংখ্যিক Google Analytics 4 প্রপার্টি আইডি উল্লেখ করতে হবে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport

রিপোর্টিং API v4

রিপোর্টিং এপিআই v4-এর জন্য একটি ইউনিভার্সাল অ্যানালিটিক্স ভিউ (প্রোফাইল) আইডি একটি রিপোর্ট কোয়েরির মূল অংশে নির্দিষ্ট করা প্রয়োজন।

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",

    ....

আপনি যদি ডেটা API ক্লায়েন্ট লাইব্রেরিগুলির মধ্যে একটি ব্যবহার করেন তবে অনুরোধ URL পাথটি ম্যানুয়ালি ম্যানিপুলেট করার দরকার নেই৷ বেশিরভাগ API ক্লায়েন্ট একটি property প্যারামিটার প্রদান করে যা properties/GA4_PROPERTY_ID আকারে একটি স্ট্রিং আশা করে। ক্লায়েন্ট লাইব্রেরি ব্যবহারের উদাহরণগুলির জন্য দ্রুত শুরু নির্দেশিকা দেখুন।

তারিখ পরিসীমা

Reporting API v4 এবং Data API v1 উভয়ই রিপোর্টিং অনুরোধে dateRanges ক্ষেত্র ব্যবহার করে নির্দিষ্ট করা একাধিক তারিখ ব্যাপ্তি সমর্থন করে। উভয় APIই একই তারিখের ইনপুট বিন্যাস ভাগ করে, YYYY-MM-DD আকারে পরম তারিখ মান গ্রহণ করে, অথবা আপেক্ষিক তারিখ যেমন yesderday , today , 7daysAgo , ইত্যাদি।

ডেটা API v1 অনুরোধগুলি 4 তারিখের সীমার মধ্যে সীমাবদ্ধ, যেখানে রিপোর্টিং API v4 একটি একক রিপোর্ট অনুরোধে 2 তারিখের সীমার জন্য অনুমতি দেয়৷

ডেটা API v1-এর প্রতিটি dateRange একটি ঐচ্ছিক name ক্ষেত্র থাকতে পারে যা একটি প্রতিক্রিয়ায় সংশ্লিষ্ট তারিখের পরিসর উল্লেখ করতে ব্যবহার করা যেতে পারে। name দেওয়া না হলে, তারিখ পরিসরের নাম স্বয়ংক্রিয়ভাবে তৈরি হয়।

যখন একটি ডেটা API v1 অনুরোধে একাধিক তারিখের সীমা নির্দিষ্ট করা হয়, তখন একটি নতুন dateRange মাত্রা স্বয়ংক্রিয়ভাবে একটি প্রতিক্রিয়াতে যোগ করা হয় এবং তারিখ পরিসরের নামটি একটি মাত্রা মান হিসাবে ব্যবহৃত হয়। মনে রাখবেন এই আচরণটি রিপোর্টিং API v4 থেকে আলাদা, যা প্রতিটি সারির মধ্যে মেট্রিক মানের একটি গ্রুপ হিসাবে একটি তারিখ পরিসরের জন্য ডেটা প্রদান করে।

ডেটা API v1 অনুরোধ

একটি অনুরোধে প্রতিটি dateRange মানের জন্য একটি ঐচ্ছিক name ক্ষেত্র ব্যবহার করা হয়। এই তারিখ পরিসরের নামটি প্রতিক্রিয়াতে dateRange মাত্রার মান হিসাবে ব্যবহার করা হবে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "metrics": [
    {
      "name": "sessions"
    }
  ],
  "dimensions": [
    {
      "name": "country"
    }
  ],
  "dateRanges": [
    {
      "startDate": "2020-01-01",
      "endDate": "2020-01-31",
      "name": "year_ago"
    },
    {
      "startDate": "2021-01-01",
      "endDate": "2021-01-31",
      "name": "current_year"
    }
  ]
}

ডেটা API v1 প্রতিক্রিয়া

একটি অতিরিক্ত dateRange মাত্রা স্বয়ংক্রিয়ভাবে প্রতিক্রিয়া অন্তর্ভুক্ত করা হয়. dateRange ডাইমেনশনের মানটিতে একটি তারিখ ব্যাপ্তির নাম থাকে, যা dateRange.name ফিল্ড থেকে আসে বা স্বয়ংক্রিয়ভাবে তৈরি হয়।

....

"dimensionHeaders": [
  {
    "name": "country"
  },
  {
    "name": "dateRange"
  }
],

....

"rows": [

....

  {
    "dimensionValues": [
      {
        "value": "Japan"
      },
      {
        "value": "year_ago"
      }
    ],
    "metricValues": [
      {
        "value": "253286"
      }
    ]
  },
  {
    "dimensionValues": [
      {
        "value": "Japan"
      },
      {
        "value": "current_year"
      }
    ],
    "metricValues": [
      {
        "value": "272582"
      }
    ]
  },

....

রিপোর্টিং API v4 অনুরোধ

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dateRanges": [
        {
          "startDate": "2020-01-01",
          "endDate": "2020-01-31",
        },
        {
          "startDate": "2021-01-01",
          "endDate": "2021-01-31",
        }
      ],
      "metrics": [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions": [
        {
          "name": "ga:country"
        }
      ]
    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

রিপোর্টিং API v4-এ, প্রতিটি তারিখ ব্যাপ্তির মান metrics ক্ষেত্রের মধ্যে গোষ্ঠীবদ্ধ করা হয়:

{
  "dimensions": [
    "Japan"
  ],
  "metrics": [
    {
      "values": [
        "253286"
      ]
    },
    {
      "values": [
        "272582"
      ]
    }
  ]
},

শ্রেণীবিভাজন

Data API v1 রিপোর্ট প্রশ্নের অর্ডারিং আচরণ, OrderBys ফিল্ড ব্যবহার করে নিয়ন্ত্রণ করা যেতে পারে, Reporting API v4-এর orderBys ফিল্ডের মতো।

OrderBy স্পেসিফিকেশন Data API v1 এ পরিবর্তিত হয়েছে। প্রতিটি OrderBy নিম্নলিখিতগুলির মধ্যে একটি থাকতে পারে:

  • DimensionOrderBy , একটি মাত্রার মান অনুসারে ফলাফল সাজায়।
  • MetricOrderBy , একটি মেট্রিকের মান অনুসারে ফলাফল বাছাই করে।
  • PivotOrderBy , পিভট ক্যোয়ারীতে ব্যবহৃত হয় এবং একটি পিভট কলাম গ্রুপের মধ্যে একটি মেট্রিকের মান অনুসারে ফলাফল সাজায়।

রিপোর্টিং API v4 দ্বারা সমর্থিত DELTA , SMART , HISTOGRAM_BUCKET অর্ডারের ধরনগুলি ডেটা API v1 এ প্রয়োগ করা হয় না৷

Data API v1-এর OrderType.NUMERIC অর্ডারের ধরন রিপোর্টিং API v4-এর OrderType.DIMENSION_AS_INTEGER মানের সমতুল্য।

ডেটা API v1 অনুরোধ

এই উদাহরণটি একটি নমুনা ক্যোয়ারী দেখায় যা দেশ অনুসারে সেশন গণনা রিপোর্ট করে, sessions মেট্রিক অনুসারে সারিগুলিকে অবরোহ ক্রমে ক্রম করে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "metrics": [
    {
      "name": "sessions"
    }
  ],
  "dimensions": [
    {
      "name": "country"
    }
  ],
  "dateRanges": [
    {
      "startDate": "yesterday",
      "endDate": "today"
    }
  ],
  "orderBys": [
    {
      "metric": {
        "metricName": "sessions"
      },
      "desc": true
    }
  ]
}

ডেটা API v1 প্রতিক্রিয়া

{
  "dimensionHeaders": [
    {
      "name": "country"
    }
  ],
  "metricHeaders": [
    {
      "name": "sessions",
      "type": "TYPE_INTEGER"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": "United States"
        }
      ],
      "metricValues": [
        {
          "value": "510449"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Japan"
        }
      ],
      "metricValues": [
        {
          "value": "283430"
        }
      ]
    },

....

  ],
  "totalSize": 212,
  "metadata": {}
}

রিপোর্টিং API v4 অনুরোধ

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dateRanges": [
        {
          "startDate": "yesterday",
          "endDate": "today"
        }
      ],
      "metrics": [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions": [
        {
          "name": "ga:country"
        }
      ],
      "orderBys": [
        {
          "fieldName": "ga:sessions",
          "sortOrder": "DESCENDING"
        }
      ]
    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

{
"reports": [
  {

....

    "data": {
      "rows": [
        {
          "dimensions": [
            "United States"
          ],
          "metrics": [
            {
              "values": [
                "510449"
              ]
            }
          ]
        },
        {
          "dimensions": [
            "Japan"
          ],
          "metrics": [
            {
              "values": [
                "283430"
              ]
            }
          ]
        },

....

    }
  ]
}

ফিল্টারিং

ডাটা এপিআই v1 এর ডাইমেনশনফিল্টার এবং মেট্রিকফিল্টার ক্লজগুলি API কে শুধুমাত্র নির্দিষ্ট মাত্রা বা মেট্রিক মানের জন্য ডেটা ফেরত দিতে বলার জন্য ব্যবহার করা যেতে পারে। এটি রিপোর্টিং API v4 এর ডাইমেনশনফিল্টারক্লজ এবং মেট্রিক ফিল্টারক্লজ এর মত।

ডেটা API v1 ফিল্টার এক্সপ্রেশন স্ট্রিংগুলিকে সমর্থন করে না যেমন রিপোর্টিং API v4-এর ফিল্টার এক্সপ্রেশন ক্লজ। এই এক্সপ্রেশনগুলি dimensionFilter এবং metricFilter ক্লজগুলি ব্যবহার করে পুনরায় লেখা উচিত।

ডেটা API v1 অনুরোধ

এই নমুনা অনুরোধ ব্যবহারকারীদের দ্বারা পরিদর্শন করা নির্দিষ্ট পৃষ্ঠার পাথগুলির জন্য সেশন গণনার একটি তালিকা প্রদান করে।

ডাইমেনশনফিল্টার ক্লজটি /webstore/ দিয়ে শুরু হওয়া এবং স্ট্রিং action=a12345 ধারণ করে pagePath ডাইমেনশন মান সহ শুধুমাত্র সারিগুলি ফেরত দিতে ব্যবহৃত হয়।

মেট্রিকফিল্টার ক্লজ runReport পদ্ধতিকে 1,000 এর চেয়ে বড় sessions মেট্রিক মান সহ শুধুমাত্র সারিগুলি ফেরত দিতে বলে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "metrics": [
    {
      "name": "sessions"
    }
  ],
  "dimensions": [
    {
      "name": "pagePath"
    }
  ],
  "dimensionFilter": {
    "andGroup": {
      "expressions": [
        {
          "filter": {
            "stringFilter": {
              "value": "/webstore/",
              "matchType": "BEGINS_WITH"
            },
            "fieldName": "pagePath"
          }
        },
        {
          "filter": {
            "stringFilter": {
              "matchType": "CONTAINS",
              "value": "action=a12345"
            },
            "fieldName": "pagePath"
          }
        }
      ]
    }
  },
  "metricFilter": {
    "filter": {
      "numericFilter": {
        "value": {
          "int64Value": 1000
        },
        "operation": "GREATER_THAN"
      },
      "fieldName": "sessions"
    }
  },
  "dateRanges": [
    {
      "startDate": "yesterday",
      "endDate": "today"
    }
  ]
}

রিপোর্টিং API v4 অনুরোধ

এই নমুনা অনুরোধ Data API v1 উদাহরণের অনুরূপ। এটি ব্যবহারকারীদের দ্বারা পরিদর্শন করা নির্দিষ্ট পৃষ্ঠার পাথগুলির জন্য সেশন গণনার একটি তালিকা প্রদান করে।

dimensionFilterClauses ক্ষেত্রটি /webstore/ দিয়ে শুরু হওয়া এবং স্ট্রিং action=a12345 ধারণকারী pagePath মাত্রা মান সহ শুধুমাত্র সারি ফেরাতে ব্যবহৃত হয়।

metricFilterClauses ক্ষেত্রটি 1,000-এর থেকে বড় ga:sessions মেট্রিক মানগুলির সাথে শুধুমাত্র সারিগুলি ফেরাতে ব্যবহৃত হয়৷

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "metrics": [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions": [
        {
          "name": "ga:pagePath"
        }
      ],
      "metricFilterClauses": [
        {
          "filters": [
            {
              "metricName": "ga:sessions",
              "operator": "GREATER_THAN",
              "comparisonValue": "1000"
            }
          ]
        }
      ],
      "dimensionFilterClauses": [
        {
          "filters": [
            {
              "dimensionName": "ga:pagePath",
              "operator": "BEGINS_WITH",
              "expressions": [
                "/webstore/"
              ]
            },
            {
              "dimensionName": "ga:pagePath",
              "operator": "PARTIAL",
              "expressions": [
                "action=a12345"
              ]
            }
          ],
          "operator": "AND"
        }
      ],
      "dateRanges": [
        {
          "startDate": "yesterday",
          "endDate": "today"
        }
      ]
    }
  ]
}

পৃষ্ঠা সংখ্যা

ডেটা এপিআই v1 সীমা এবং অফসেট ক্ষেত্র ব্যবহার করে প্রতিক্রিয়া ফলাফলের মাধ্যমে পেজিনেট করার জন্য যা একাধিক পৃষ্ঠা বিস্তৃত করে, যেখানে রিপোর্টিং API v4 ব্যবহার করে pageToken এবং pageSize

ডেটা API v1-এর পিভট অনুরোধের জন্য, পিভট অবজেক্টের limit এবং offset ক্ষেত্রগুলি প্রতিটি পিভটের জন্য পৃথকভাবে পেজিনেশন প্রয়োগ করতে ব্যবহার করা উচিত। প্রতিটি পিভট অবজেক্টের জন্য limit ক্ষেত্রটি এখন প্রয়োজন।

ডিফল্টরূপে, ডেটা API v1 ইভেন্ট ডেটার সর্বাধিক প্রথম 10,000 সারি প্রদান করে, যেখানে রিপোর্টিং API v4-এর ডিফল্ট মান হল 1,000 সারি৷

ডেটা API v1-এর প্রতিক্রিয়াতে rowCount ক্ষেত্র ব্যবহার করে প্রশ্নের সাথে মিলে যাওয়া মোট সারির সংখ্যা ফেরত দেওয়া হয়, যা Reporting API v4-এর মতো।

ডেটা API v1 অনুরোধ

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "dateRanges": [

....

  ],
  "metrics": [

....

  ],
  "dimensions": [

....

  ],
  "limit": 5,
  "offset": 15
}

ডেটা API v1 প্রতিক্রিয়া

{
  "dimensionHeaders": [

....

  ],
  "metricHeaders": [

....

  ],
  "rows": [

....

  ],
  "rowCount": 228,
}

রিপোর্টিং API v4 অনুরোধ

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dateRanges": [

....

      ],
      "metrics": [

....

      ],
      "dimensions": [

....

      ],
      "pageSize": 5,
      "pageToken": "5"

    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

{
  "reports": [
    {

....

      "data": {
        "rows": [

....

        ],

....

        "rowCount": 225,
      },
      "nextPageToken": "15"
    }
  ]
}

মেট্রিক সমষ্টি

ডেটা API v1 শুধুমাত্র তখনই সমষ্টির মান গণনা করে যখন একটি অনুরোধে মেট্রিক অ্যাগ্রিগেশন ক্ষেত্র নির্দিষ্ট করা হয়। বিপরীতে, রিপোর্টিং API v4 ডিফল্টরূপে প্রতিটি মেট্রিকের জন্য মোট, সর্বনিম্ন এবং সর্বোচ্চ মান প্রদান করে, যদি না hideTotals এবং hideValueRanges ক্ষেত্রগুলি true হিসাবে সেট করা হয়।`

ডেটা API v1 অনুরোধ

একটি অনুরোধে মেট্রিক অ্যাগ্রিগেশন ক্ষেত্র নির্দিষ্ট করা থাকলেই কেবলমাত্র একত্রিতকরণ গণনা করা হবে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "metricAggregations": [
    "TOTAL",
    "MAXIMUM",
    "MINIMUM"
  ],
  "metrics": [
    {
      "name": "sessions"
    }
  ],
  "dimensions": [
    {
      "name": "country"
    }
  ],
  "dateRanges": [
    {
      "startDate": "yesterday",
      "endDate": "today"
    }
  ]
}

ডেটা API v1 প্রতিক্রিয়া

সমষ্টিগত মেট্রিক সারিগুলি একটি প্রতিক্রিয়ার totals , minimum এবং maximum ক্ষেত্রে ফেরত দেওয়া হয়৷ সমষ্টিগত মেট্রিক সারিগুলির জন্য, dimensionValues ক্ষেত্রের একটি বিশেষ মান রয়েছে RESERVED_TOTAL , RESERVED_MAX বা RESERVED_MIN

{
  "dimensionHeaders": [

  ....

  ],
  "metricHeaders": [

  ....

  ],
  "rows": [

  ....

  ],
  "totals": [
    {
      "dimensionValues": [
        {
          "value": "RESERVED_TOTAL"
        },
        {
          "value": "RESERVED_TOTAL"
        }
      ],
      "metricValues": [
        {
          "value": "6026053"
        }
      ]
    }
  ],
  "maximums": [
    {
      "dimensionValues": [
        {
          "value": "RESERVED_MAX"
        },
        {
          "value": "RESERVED_MAX"
        }
      ],
      "metricValues": [
        {
          "value": "493655"
        }
      ]
    }
  ],
  "minimums": [
    {
      "dimensionValues": [
        {
          "value": "RESERVED_MIN"
        },
        {
          "value": "RESERVED_MIN"
        }
      ],
      "metricValues": [
        {
          "value": "1"
        }
      ]
    }
  ],

....

}

রিপোর্টিং API v4 অনুরোধ

দেশ অনুযায়ী সেশন গণনা ফেরত দেওয়ার জন্য একটি নমুনা অনুরোধ।

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dateRanges": [
        {
          "startDate": "yesterday",
          "endDate": "today"
        }
      ],
      "metrics": [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions": [
        {
          "name": "ga:country"
        }
      ],
    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

একটি রিপোর্টিং API v4 প্রতিক্রিয়াতে totals , minimums এবং maximums ক্ষেত্রগুলি ডিফল্টরূপে উপস্থিত থাকে৷

{
  "reports": [
    {
      "columnHeader": {

         ....

      },
      "data": {
        "rows": [

         ....

        ],

       ....

        "totals": [
          {
            "values": [
              "4493363"
            ]
          }
        ],
        "minimums": [
          {
            "values": [
              "1"
            ]
          }
        ],
        "maximums": [
          {
            "values": [
              "684005"
            ]
          }
        ]

      }
    }
  ]
}

পিভটস

ডেটা API v1 রানপিভটরিপোর্ট এবং ব্যাচরানপিভোট রিপোর্টিং পদ্ধতিতে পিভট কার্যকারিতা সমর্থন করে।

রিপোর্টিং এপিআই v4 ব্যাচগেট পদ্ধতি ব্যবহার করে রিপোর্টিং ক্যোয়ারীতে পিভট অন্তর্ভুক্ত করার অনুমতি দেয়।

রিপোর্টিং API v4 এর তুলনায় ডেটা API v1-এ পিভটগুলি ভিন্নভাবে প্রয়োগ করা হয় যাতে প্রতিটি প্রতিক্রিয়া সারি টেবিলের একটি একক ঘরকে প্রতিনিধিত্ব করে, যেখানে Reporting API v4-এ একটি একক প্রতিক্রিয়া সারি একটি সম্পূর্ণ টেবিল লাইনকে উপস্থাপন করে।

ডেটা API v1

RunPivotReport ক্যোয়ারীতে Data API v1 প্রতিক্রিয়ার একটি অংশ নিচে দেওয়া হল। পিভটিং রিপোর্টের প্রতিটি কক্ষ পৃথকভাবে ফেরত দেওয়া হয়:

    "rows": [
      {
        "dimensionValues": [
          {
            "value": "Albania"
          },
          {
            "value": "Edge"
          }
        ],
        "metricValues": [
          {
            "value": "1701"
          }
        ]
      },

রিপোর্টিং API v4

নীচে ব্যাচগেট ক্যোয়ারীতে রিপোর্টিং API v4 প্রতিক্রিয়ার একটি খণ্ড রয়েছে৷ একটি একক প্রতিক্রিয়া সারি একটি সম্পূর্ণ টেবিল লাইনকে উপস্থাপন করে যাতে pivotValueRegions এ পিভটের জন্য সমস্ত মেট্রিক মান রয়েছে:

      "data": {
        "rows": [
          {
            "dimensions": [
              "Albania"
            ],
            "metrics": [
              {
                "values": [
                  "42394"
                ],
                "pivotValueRegions": [
                  {
                    "values": [
                      "24658",
                      "17208",
                      "132"
                    ]
                  }
                ]
              }
            ]
          },

Data API v1-এ, runPivotReport বা batchRunPivotReports কোয়েরির প্রতিটি মাত্রা একটি পিভট অবজেক্টের মধ্যে সংজ্ঞায়িত করা আবশ্যক। একটি রিপোর্টে একটি মাত্রা দৃশ্যমান হবে না যদি এটি একটি পিভট কোয়েরির কোনো পিভটে ব্যবহার না করা হয়।

ডেটা API v1-এর পিভোটিং কলামগুলি Reporting API v4-এর dimensions ক্ষেত্রের পরিবর্তে fieldNames ক্ষেত্র ব্যবহার করে নির্দিষ্ট করা হয়।

ডাটা এপিআই v1 রিপোর্টিং অনুরোধে মাত্রা ফিল্টারিং চাইলে একটি অনুরোধের স্কোপড ডাইমেনশন ফিল্টার ব্যবহার করতে হবে। এটি Reporting API v4 থেকে ভিন্ন, যা একটি পিভট অবজেক্টে ডাইমেনশনফিল্টারক্লজ স্পেসিফিকেশন গ্রহণ করে।

ডেটা API v1-এর অফসেট ক্ষেত্রটি কার্যত রিপোর্টিং API v4-এর startGroup ক্ষেত্রের অনুরূপ।

ডেটা API v1-এর সীমা ক্ষেত্রটি রিপোর্টিং API v4-এর maxGroupCount- এর অনুরূপ এবং রিপোর্ট কার্ডিনালিটি সীমাবদ্ধ করতে ব্যবহার করা উচিত।

ডেটা API v1 একাধিক পিভট সমর্থন করে যতক্ষণ না প্রতিটি পিভটের limit প্যারামিটারের গুণফল 100,000-এর বেশি না হয়। রিপোর্টিং API v4 শুধুমাত্র একটি পিভট মাত্রা সমর্থন করে।

ডিফল্টরূপে, ডেটা API v1 রিপোর্টের প্রথম মেট্রিক দ্বারা একটি পিভটের মধ্যে মাত্রা অর্ডার করে। এই আচরণটি Reporting API v4 থেকে আলাদা, যেখানে পিভট অর্ডারিং অনুরোধ করা মেট্রিকগুলির "মোট" এর অবরোহ ক্রম দ্বারা নির্ধারিত হয় । ডেটা API v1-এ সাজানোর ক্রম নির্দিষ্ট করতে, একটি পিভট স্পেসিফিকেশনের অর্ডারবাইস ক্ষেত্রটি ব্যবহার করুন।

ডেটা API v1 অনুরোধ

এই ডেটা API v1 পিভট ক্যোয়ারী browser মাত্রা দ্বারা পিভট করা দেশ অনুসারে সেশন গণনার একটি প্রতিবেদন তৈরি করে। নোট করুন কিভাবে ক্যোয়ারী অর্ডারবাইস , সীমা , অফসেট ক্ষেত্রগুলি ব্যবহার করে অনুরূপ রিপোর্টিং API v4 ক্যোয়ারির আচরণ পুনরুত্পাদন করে যাতে অর্ডারিং এবং পেজিনেশন সেটিংস সংরক্ষণ করা যায়৷

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runPivotReport

{
  "dateRanges": [
    {
      "startDate": "2021-01-01",
      "endDate": "2021-01-30"
    }
  ],
  "pivots": [
    {
      "fieldNames": [
        "country"
      ],
      "limit": 250,
      "orderBys": [
        {
          "dimension": {
            "dimensionName": "country"
          }
        }
      ]
    },
    {
      "fieldNames": [
        "browser"
      ],
      "offset": 3,
      "limit": 3,
      "orderBys": [
        {
          "metric": {
            "metricName": "sessions"
          },
          "desc": true
        }
      ]
    }
  ],
  "metrics": [
    {
      "name": "sessions"
    }
  ],
  "dimensions": [
    {
      "name": "country"
    },
    {
      "name": "browser"
    }
  ]
}

ডেটা API v1 প্রতিক্রিয়া

{
  "pivotHeaders": [
    {
      "pivotDimensionHeaders": [
        {
          "dimensionValues": [
            {
              "value": "(not set)"
            }
          ]
        },
        {
          "dimensionValues": [
            {
              "value": "Albania"
            }
          ]
        },
        {
          "dimensionValues": [
            {
              "value": "Algeria"
            }
          ]
        }
      ],
      "rowCount": 234
    },
    {
      "pivotDimensionHeaders": [
        {
          "dimensionValues": [
            {
              "value": "Safari"
            }
          ]
        },
        {
          "dimensionValues": [
            {
              "value": "Edge"
            }
          ]
        },
        {
          "dimensionValues": [
            {
              "value": "Opera"
            }
          ]
        }
      ],
      "rowCount": 124
    }
  ],
  "dimensionHeaders": [
    {
      "name": "country"
    },
    {
      "name": "browser"
    }
  ],
  "metricHeaders": [
    {
      "name": "sessions",
      "type": "TYPE_INTEGER"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": "(not set)"
        },
        {
          "value": "Safari"
        }
      ],
      "metricValues": [
        {
          "value": "2531"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "(not set)"
        },
        {
          "value": "Edge"
        }
      ],
      "metricValues": [
        {
          "value": "1701"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "(not set)"
        },
        {
          "value": "Opera"
        }
      ],
      "metricValues": [
        {
          "value": "1564"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Albania"
        },
        {
          "value": "Safari"
        }
      ],
      "metricValues": [
        {
          "value": "2531"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Albania"
        },
        {
          "value": "Edge"
        }
      ],
      "metricValues": [
        {
          "value": "1701"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Albania"
        },
        {
          "value": "Opera"
        }
      ],
      "metricValues": [
        {
          "value": "1564"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Algeria"
        },
        {
          "value": "Safari"
        }
      ],
      "metricValues": [
        {
          "value": "237"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Algeria"
        },
        {
          "value": "Edge"
        }
      ],
      "metricValues": [
        {
          "value": "44"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Algeria"
        },
        {
          "value": "Opera"
        }
      ],
      "metricValues": [
        {
          "value": "22"
        }
      ]
    },

....

  ],

....

}

রিপোর্টিং API v4 অনুরোধ

এই রিপোর্টিং এপিআই v4 পিভট ক্যোয়ারীটি ga:browser মাত্রা দ্বারা পিভট করা দেশ অনুসারে সেশন গণনার একটি প্রতিবেদন তৈরি করে।

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dateRanges": [
        {
          "startDate": "2021-01-01",
          "endDate": "2021-01-30"
        }
      ],
      "metrics": [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions": [
        {
          "name": "ga:country"
        }
      ],
      "pivots": [
        {
          "dimensions": [
            {
              "name": "ga:browser"
            }
          ],
          "startGroup": 3,
          "maxGroupCount": 3,
          "metrics": [
            {
              "expression": "ga:sessions"
            }
          ]
        }
      ]
    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

{
  "reports": [
    {
      "columnHeader": {
        "dimensions": [
          "ga:country"
        ],
        "metricHeader": {
          "metricHeaderEntries": [
            {
              "name": "ga:sessions",
              "type": "INTEGER"
            }
          ],
          "pivotHeaders": [
            {
              "pivotHeaderEntries": [
                {
                  "dimensionNames": [
                    "ga:browser"
                  ],
                  "dimensionValues": [
                    "Edge"
                  ],
                  "metric": {
                    "name": "ga:sessions",
                    "type": "INTEGER"
                  }
                },
                {
                  "dimensionNames": [
                    "ga:browser"
                  ],
                  "dimensionValues": [
                    "Opera"
                  ],
                  "metric": {
                    "name": "ga:sessions",
                    "type": "INTEGER"
                  }
                },
                {
                  "dimensionNames": [
                    "ga:browser"
                  ],
                  "dimensionValues": [
                    "Samsung Internet"
                  ],
                  "metric": {
                    "name": "ga:sessions",
                    "type": "INTEGER"
                  }
                }
              ],
              "totalPivotGroupsCount": 19
            }
          ]
        }
      },
      "data": {
        "rows": [
          {
            "dimensions": [
              "(not set)"
            ],
            "metrics": [
              {
                "values": [
                  "781283"
                ],
                "pivotValueRegions": [
                  {
                    "values": [
                      "6923",
                      "1385",
                      "66"
                    ]
                  }
                ]
              }
            ]
          },
          {
            "dimensions": [
              "Albania"
            ],
            "metrics": [
              {
                "values": [
                  "42394"
                ],
                "pivotValueRegions": [
                  {
                    "values": [
                      "24658",
                      "17208",
                      "132"
                    ]
                  }
                ]
              }
            ]
          },
          {
            "dimensions": [
              "Algeria"
            ],
            "metrics": [
              {
                "values": [
                  "23208"
                ],
                "pivotValueRegions": [
                  {
                    "values": [
                      "19252",
                      "66",
                      "1582"
                    ]
                  }
                ]
              }
            ]
          },

  ....

        ],

  ....

      }
    }
  ]
}

সমদল

Data API v1 কোহোর্ট রিপোর্ট কনফিগার করতে CohortSpec স্পেসিফিকেশন ব্যবহার করে। এটি Reporting API v4 এর CohortGroup স্পেসিফিকেশনের অনুরূপ।

ডেটা API v1-এ উপলব্ধ সমস্ত মেট্রিক বর্তমানে সমগোত্রীয় প্রশ্নের সাথে সামঞ্জস্যপূর্ণ, যেখানে রিপোর্টিং API v4 শুধুমাত্র বিশেষ মেট্রিক্সের একটি উপসেটকে একটি কোহর্ট কোয়েরিতে ব্যবহার করার অনুমতি দেয়।

একটি ডেটা API v1 সমগোত্রীয় অনুরোধে, মেট্রিক cohortActiveUsers প্রয়োজন।

ডেটা API v1 এবং Reporting API v4 উভয়ই একক অনুরোধে 12টি সমগোত্রকে অনুমতি দেয়৷

লাইফটাইম ভ্যালু (LTV) মেট্রিক্স বর্তমানে Data API v1-এ সমর্থিত নয়।

সমগোত্রীয় মেট্রিক্স সমতা

রিপোর্টিং API v4-এ সংজ্ঞায়িত বেশিরভাগ সমগোত্রীয় মেট্রিকগুলিকে নীচের চার্ট অনুসারে ডেটা API v1-এ সমতুল্য ফলাফল পেতে একটি অভিব্যক্তি দিয়ে প্রতিস্থাপন করা যেতে পারে।

রিপোর্টিং API v4 মেট্রিক নাম ডেটা API v1 মেট্রিক নাম বা অভিব্যক্তি
ga:cohortActiveUsers cohortActiveUsers
ga:cohortTotalUsers cohortTotalUsers
ga:cohortRetentionRate "expression": "cohortActiveUsers/cohortTotalUsers"
ga:cohortRevenuePerUser "expression": "totalRevenue/cohortActiveUsers"
ga:cohortVisitDurationPerUser "expression": "user EnngagementDuration/cohortActiveUsers"
ga:cohortAppviewsPerUser "expression": "screenPageViews/cohortActiveUsers"
ga:cohortPageviewsPerUser "expression": "screenPageViews/cohortActiveUsers"
ga:cohortSessionsPerUser "expression": "সেশন/কোহোর্টঅ্যাক্টিভ ব্যবহারকারী"
ga:cohortGoalCompletionsPerUser "expression": "eventCount/cohortActiveUsers", কাঙ্খিত লক্ষ্য পূর্ণতা ইভেন্টের সাথে সংশ্লিষ্ট eventName দ্বারা একটি মাত্রা ফিল্টার ছাড়াও।

ডেটা API v1 অনুরোধ

একটি নমুনা কোয়েরি যা ব্যবহারকারীদের একটি দলকে কনফিগার করে যাদের প্রথম সেশন 2021-01-03-এর এক সপ্তাহে হয়েছিল। সক্রিয় ব্যবহারকারীর সংখ্যা এবং ব্যবহারকারী ধরে রাখার হার 5 সপ্তাহের বেশি সময়ের জন্য গণনা করা হয়, সাপ্তাহিক গ্রানুলারিটি ব্যবহার করে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runReport
{
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "name": "cohort",
        "dateRange": {
          "startDate": "2021-01-03",
          "endDate": "2021-01-09"
        }
      }
    ],
    "cohortsRange": {
      "startOffset": 0,
      "endOffset": 4,
      "granularity": "WEEKLY"
    }
  },
  "metrics": [
    {
      "name": "cohortActiveUsers"
    },
    {
      "expression": "cohortActiveUsers/cohortTotalUsers",
      "name": "cohortRetentionRate"
    }
  ],
  "dimensions": [
    {
      "name": "cohort"
    },
    {
      "name": "cohortNthWeek"
    }
  ]
}

ডেটা API v1 প্রতিক্রিয়া

{
  "dimensionHeaders": [
    {
      "name": "cohort"
    },
    {
      "name": "cohortNthWeek"
    }
  ],
  "metricHeaders": [
    {
      "name": "cohortActiveUsers",
      "type": "TYPE_INTEGER"
    },
    {
      "name": "cohortRetentionRate",
      "type": "TYPE_FLOAT"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": "cohort"
        },
        {
          "value": "0000"
        }
      ],
      "metricValues": [
        {
          "value": "4268816"
        },
        {
          "value": "0.999913800857494"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "cohort"
        },
        {
          "value": "0001"
        }
      ],
      "metricValues": [
        {
          "value": "241580"
        },
        {
          "value": "0.056586926213534013"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "cohort"
        },
        {
          "value": "0002"
        }
      ],
      "metricValues": [
        {
          "value": "159390"
        },
        {
          "value": "0.037335003597877253"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "cohort"
        },
        {
          "value": "0003"
        }
      ],
      "metricValues": [
        {
          "value": "131512"
        },
        {
          "value": "0.030804950079453122"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "cohort"
        },
        {
          "value": "0004"
        }
      ],
      "metricValues": [
        {
          "value": "96793"
        },
        {
          "value": "0.022672482610259947"
        }
      ]
    }
  ],
  "totalSize": 5,
  "metadata": {}
}

রিপোর্টিং API v4 অনুরোধ

একটি নমুনা কোয়েরি যা ব্যবহারকারীদের একটি দলকে কনফিগার করে যাদের প্রথম সেশন 2021-01-03-এর এক সপ্তাহে হয়েছিল। সক্রিয় ব্যবহারকারীর সংখ্যা এবং ব্যবহারকারী ধরে রাখার হার 5 সপ্তাহের বেশি সময়ের জন্য গণনা করা হয়, WEEKLY গ্রানুলারিটি ব্যবহার করে।

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests": [
    {
      "viewId": "UA_VIEW_ID",
      "dimensions": [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthWeek"
        }
      ],
      "metrics": [
        {
          "expression": "ga:cohortActiveUsers"
        },
        {
          "expression": "ga:cohortRetentionRate"
        }
      ],
      "cohortGroup": {
        "cohorts": [
          {
            "name": "cohort",
            "type": "FIRST_VISIT_DATE",
            "dateRange": {
              "startDate": "2021-01-03",
              "endDate": "2021-01-09"
            }
          }
        ]
      }
    }
  ]
}

রিপোর্টিং API v4 প্রতিক্রিয়া

{
  "reports": [
    {
      "columnHeader": {
        "dimensions": [
          "ga:cohort",
          "ga:cohortNthWeek"
        ],
        "metricHeader": {
          "metricHeaderEntries": [
            {
              "name": "ga:cohortActiveUsers",
              "type": "INTEGER"
            },
            {
              "name": "ga:cohortRetentionRate",
              "type": "PERCENT"
            }
          ]
        }
      },
      "data": {
        "rows": [
          {
            "dimensions": [
              "cohort",
              "0000"
            ],
            "metrics": [
              {
                "values": [
                  "40793",
                  "100.0"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0001"
            ],
            "metrics": [
              {
                "values": [
                  "3883",
                  "9.518789988478416"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0002"
            ],
            "metrics": [
              {
                "values": [
                  "2165",
                  "5.307283112298679"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0003"
            ],
            "metrics": [
              {
                "values": [
                  "1703",
                  "4.174735861544873"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0004"
            ],
            "metrics": [
              {
                "values": [
                  "1484",
                  "3.637879047875861"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0005"
            ],
            "metrics": [
              {
                "values": [
                  "1103",
                  "2.7038952761503197"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0006"
            ],
            "metrics": [
              {
                "values": [
                  "933",
                  "2.28715711028853"
                ]
              }
            ]
          },
          {
            "dimensions": [
              "cohort",
              "0007"
            ],
            "metrics": [
              {
                "values": [
                  "336",
                  "0.8236707278209496"
                ]
              }
            ]
          }
        ],
        "totals": [
          {
            "values": [
              "52400",
              "16.056676390557204"
            ]
          }
        ],
        "rowCount": 8,
        "minimums": [
          {
            "values": [
              "336",
              "0.8236707278209496"
            ]
          }
        ],
        "maximums": [
          {
            "values": [
              "40793",
              "100.0"
            ]
          }
        ],
        "isDataGolden": true
      }
    }
  ]
}

স্যাম্পলিং

ডেটা এপিআই v1 স্বয়ংক্রিয়ভাবে ডেটা স্যাম্পলিং ব্যবহার করে যখন এটি আশা করে যে কার্ডিনালিটি সীমা ডেটার গুণমানকে কমিয়ে দেবে। যদি একটি তারিখ ব্যাপ্তির ফলাফল নমুনা করা হয়, তাহলে RunReportResponse এর metadata একটি সংশ্লিষ্ট SamplingMetadata ধারণ করবে, যা স্যাম্পলিং লেভেল ক্ষেত্রের অনুরূপ যা Reporting API v4 এ উপস্থিত ছিল।

ডেটা সতেজতা

ডেটা এপিআই রিপোর্টিং API v4 এর isDataGolden ক্ষেত্রের সমতুল্য প্রদান করে না, যেটি রিপোর্টের জন্য সমস্ত হিট প্রক্রিয়াকরণ শেষ হয়েছে কিনা তা নির্দেশ করতে ব্যবহৃত হয়েছিল। অতিরিক্ত প্রক্রিয়াকরণের কারণে পরবর্তী তারিখে জিজ্ঞাসা করা হলে একই প্রতিবেদনের জন্য ভিন্ন ফলাফল দেওয়া এখনও সম্ভব।

(সমর্থিত নয়) সেগমেন্ট

বিভাগগুলি বর্তমানে ডেটা API v1-এ সমর্থিত নয়৷

রিয়েল-টাইম রিপোর্টিং

Google Analytics 4 বৈশিষ্ট্যের জন্য রিয়েল-টাইম রিপোর্ট তৈরি করতে Data API v1-এর properties.runRealtimeReport পদ্ধতি ব্যবহার করুন। ইউনিভার্সাল অ্যানালিটিক্স প্রপার্টিগুলির জন্য রিয়েল-টাইম রিপোর্টিং কার্যকারিতা Google Analytics API v3 এর data.realtime.get পদ্ধতি দ্বারা প্রদান করা হয়েছিল৷

ইউনিভার্সাল অ্যানালিটিক্স এবং গুগল অ্যানালিটিক্স 4-এর মধ্যে ধারণাগত পার্থক্যের কারণে ডেটা API রিয়েল-টাইম রিপোর্টিং স্কিমা Analytics API v3-এর রিয়েল-টাইম রিপোর্টিং স্কিমা থেকে আলাদা।

ডেটা API v1 অনুরোধ

নিম্নলিখিত উদাহরণে, Google Analytics API v3-এর ডিফল্ট সাজানোর আচরণ সংরক্ষণ করার জন্য, নমুনা ডেটা API v1 ক্যোয়ারীতে একটি ঐচ্ছিক orderBy উপাদান যোগ করা হয়েছে।

POST  https://analyticsdata.googleapis.com/v1beta/properties/GA4_PROPERTY_ID:runRealtimeReport
{
  "dimensions": [{ "name": "country" }],
  "metrics": [{ "name": "activeUsers" }],
  "orderBys": [
     {
       "dimension": {
         "dimensionName": "country"
         }
     }
   ]
}

ডেটা API v1 প্রতিক্রিয়া

{
  "dimensionHeaders": [
    {
      "name": "country"
    }
  ],
  "metricHeaders": [
    {
      "name": "activeUsers",
      "type": "TYPE_INTEGER"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": ""
        }
      ],
      "metricValues": [
        {
          "value": "199"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Afghanistan"
        }
      ],
      "metricValues": [
        {
          "value": "4"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Albania"
        }
      ],
      "metricValues": [
        {
          "value": "136"
        }
      ]
    },

    ....

  ],
  "rowCount": 172
}

Google Analytics API v3 অনুরোধ

GET https://analytics.googleapis.com/analytics/v3/data/realtime?ids=ga:UA_VIEW_ID&metrics=rt:activeUsers&dimensions=rt:country

Google Analytics API v3 প্রতিক্রিয়া

{
  "kind": "analytics#realtimeData",
  "id": "https://www.googleapis.com/analytics/v3/data/realtime?ids=ga:UA_VIEW_ID&dimensions=rt:country&metrics=rt:activeUsers",
  "query": {
    "ids": "ga:UA_VIEW_ID",
    "dimensions": "rt:country",
    "metrics": [
      "rt:activeUsers"
    ],
    "max-results": 10
  },
  "totalResults": 178,
  "profileInfo": {
    "profileId": "XXXXXX",
    "accountId": "XXXXXX",
    "webPropertyId": "UA-XXXXXX",
    "profileName": "View Name",
  },
  "columnHeaders": [
    {
      "name": "rt:country",
      "columnType": "DIMENSION",
      "dataType": "STRING"
    },
    {
      "name": "rt:activeUsers",
      "columnType": "METRIC",
      "dataType": "INTEGER"
    }
  ],
  "totalsForAllResults": {
    "rt:activeUsers": "80351"
  },
  "rows": [
    [
      "(not set)",
      "97"
    ],
    [
      "Afghanistan",
      "2"
    ],
    [
      "Albania",
      "78"
    ],

  ....

  ]
}

(সমর্থিত নয়) ব্যবহারকারী কার্যকলাপ রিপোর্টিং

ডেটা API v1 বর্তমানে রিপোর্টিং API v4-এর userActivity.search পদ্ধতির মতো পৃথক ব্যবহারকারীর কার্যকলাপ রিপোর্ট করার কার্যকারিতা সমর্থন করে না।

API কোটা পরিবর্তন

মূল এবং রিয়েল-টাইম কোটা বিভাগ

কোটার উদ্দেশ্যে, ডেটা API-এর দুটি অনুরোধের বিভাগ রয়েছে: কোর এবং রিয়েল-টাইম। কোর রিপোর্টিং পদ্ধতির ( runReport , getMetadata , runPivotReport , batchRunReports , batchRunPivotReports ) কোর কোটা চার্জ করার জন্য API অনুরোধ। runRealtimeReport পদ্ধতি চার্জ রিয়েল-টাইম কোটা চালানোর জন্য API অনুরোধ।

টোকেন কোটা

প্রোজেক্ট কোটা ছাড়াও, প্রতিটি অনুরোধে প্রোপার্টি টোকেন কোটা ব্যবহার করা হয় যা কোয়েরির জটিলতার উপর নির্ভর করে চার্জ করা হয়। API কোটা এবং সীমার বিস্তারিত বিবরণের জন্য অনুগ্রহ করে Data API v1 কোটা ডকুমেন্টেশন দেখুন।

একটি মূল বা রিয়েল টাইম রিপোর্টিং অনুরোধে returnPropertyQuota কে true হিসাবে সেট করে একটি Analytics সম্পত্তির জন্য সমস্ত কোটার বর্তমান অবস্থা পাওয়া সম্ভব। প্রপার্টি কোটায় কোটা রাজ্য ফিরিয়ে দেওয়া হবে।

(সমর্থিত নয়) সম্পদ ভিত্তিক কোটা

যেহেতু Google Analytics 4-এর সমস্ত মূল রিপোর্ট নমুনাবিহীন ডেটার উপর ভিত্তি করে তৈরি, তাই Reporting API v4-এ প্রবর্তিত রিসোর্স ভিত্তিক কোটা আর প্রযোজ্য নয়, এবং ডেটা API v1 রিপোর্টিং অনুরোধে উপস্থিত UseResourceQuotas ক্ষেত্রের সমতুল্য নেই।

(সমর্থিত নয়) প্রতি ভিউ (প্রোফাইল) প্রতি দিনের কোটা প্রতি অনুরোধ

যেহেতু Google Analytics 4-এ কোনো ভিউ নেই, requests per view (profile) per day কোটা ডেটা API v1-এ উপস্থিত নয় এবং টোকেন কোটা দ্বারা প্রতিস্থাপিত হয়।