বিশ্লেষণ ডেটা পরিষেবা

অ্যানালিটিক্স ডেটা পরিষেবা আপনাকে অ্যাপস স্ক্রিপ্টে গুগল অ্যানালিটিক্স ডেটা API v1 ব্যবহার করার অনুমতি দেয়। এই API গুগল অ্যানালিটিক্স ব্যবহারকারীদের গুগল অ্যানালিটিক্স 4 (GA4) রিপোর্ট ডেটাতে প্রোগ্রাম্যাটিক অ্যাক্সেস দেয়।

তথ্যসূত্র

এই পরিষেবা সম্পর্কে বিস্তারিত তথ্যের জন্য, Google Analytics Data API v1 রেফারেন্স ডকুমেন্টেশন দেখুন।

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

সমস্যাগুলি রিপোর্ট করতে এবং অন্যান্য সহায়তা পেতে, Google Analytics Data API v1 সহায়তা পৃষ্ঠাটি দেখুন।

নমুনা কোড

একটি প্রতিবেদন চালান

নমুনাটি শহর অনুসারে সক্রিয় ব্যবহারকারীদের সংখ্যা পুনরুদ্ধার করার জন্য একটি প্রতিবেদন চালায় এবং ফলাফলগুলি একটি নতুন স্প্রেডশিটে সংরক্ষণ করে।

উন্নত/বিশ্লেষণ ডেটা.জিএস
/**
 * Runs a report of a Google Analytics 4 property ID. Creates a sheet with the
 * report.
 */
function runReport() {
  /**
   * TODO(developer): Uncomment this variable and replace with your
   *   Google Analytics 4 property ID before running the sample.
   */
  const propertyId = "YOUR-GA4-PROPERTY-ID";

  try {
    const metric = AnalyticsData.newMetric();
    metric.name = "activeUsers";

    const dimension = AnalyticsData.newDimension();
    dimension.name = "city";

    const dateRange = AnalyticsData.newDateRange();
    dateRange.startDate = "2020-03-31";
    dateRange.endDate = "today";

    const request = AnalyticsData.newRunReportRequest();
    request.dimensions = [dimension];
    request.metrics = [metric];
    request.dateRanges = dateRange;

    const report = AnalyticsData.Properties.runReport(
      request,
      `properties/${propertyId}`,
    );
    if (!report.rows) {
      console.log("No rows returned.");
      return;
    }

    const spreadsheet = SpreadsheetApp.create("Google Analytics Report");
    const sheet = spreadsheet.getActiveSheet();

    // Append the headers.
    const dimensionHeaders = report.dimensionHeaders.map((dimensionHeader) => {
      return dimensionHeader.name;
    });
    const metricHeaders = report.metricHeaders.map((metricHeader) => {
      return metricHeader.name;
    });
    const headers = [...dimensionHeaders, ...metricHeaders];

    sheet.appendRow(headers);

    // Append the results.
    const rows = report.rows.map((row) => {
      const dimensionValues = row.dimensionValues.map((dimensionValue) => {
        return dimensionValue.value;
      });
      const metricValues = row.metricValues.map((metricValues) => {
        return metricValues.value;
      });
      return [...dimensionValues, ...metricValues];
    });

    sheet.getRange(2, 1, report.rows.length, headers.length).setValues(rows);

    console.log("Report spreadsheet created: %s", spreadsheet.getUrl());
  } catch (e) {
    // TODO (Developer) - Handle exception
    console.log("Failed with error: %s", e.error);
  }
}