Chào mọi người, kế tiếp phần 1 về GA4 sẽ là phần 2 về Google Analytics Data API.
Sau khi tích hợp GA4, số liệu phân tích và thống kê của trang web sẽ được hiển thị trên https://analytics.google.com/. Tuy nhiên, nếu bạn muốn đưa những số liệu được phân tích trên Google Analytics về trang web của mình, thống kê, sử dụng theo nhu cầu, bạn có thể sử dụng Google Analytics Data API (GA4)..
Một lưu ý là property GA4 hiện tại không có VIEW_ID như property U-A (Universal Analytics) đâu nhé !!
Đầu tiên bạn hãy truy cập https://console.cloud.google.com/ , chọn APIs & Services
Chọn ENABLE APIS AND SERVICES
Tìm kiếm service Google Analytics Data API
Sau khi enable service, bạn tiếp tục làm các bước như hình sau để tạo service account và key cho dự án của bạn.
Ở Credentials, chọn Manage service accounts
Nếu chưa có account thì CREATE SERVICE ACCOUNT
Sau khi có Service account, ta sẽ lấy file key (tải file này về và import vào dự án của bạn)
Trong file key, chúng ta sẽ quan tâm đến “client_email”.
Ví dụ ở đây là: myproject@tokyo-hydra-345418.iam.gserviceaccount.com
Trở lại trang quản lý, chọn Property Access Management và thêm 1 tài khoản người dùng. Tài khoản đó chính là “client_email” trong file key.
Đặt quyền cho email ta vừa thêm, có thể là Viewer (Người xem), Analyst (Nhà phân tích).
Như vậy, việc setup GA đã xong. Việc còn lại là của dev 😊 : setting file key .JSON in environment variable (.env) => Install the client library => Call API.
Tham khảo với PHP 😊:
+) Cài đặt môi trường: $path
là đường dẫn tới file key, sử dụng putenv()
để tạo biến môi trường trong .env
Thêm GOOGLE_APPLICATION_CREDENTIALS=$path
vào file .env
Với PHP, mình làm như này:
$path = public_path('/analytics/service-account-credentials.json');
putenv("GOOGLE_APPLICATION_CREDENTIALS=$path");
+) Chạy composer:
composer require google/analytics-data
+) Lấy report:
$propertyID
là ID của tài sản.
VD:
$response['day'] = $this->client->runReport([
'property' => 'properties/$propertyID', // Example: $propertyID = 1234567
'dateRanges' => [
new DateRange([
'start_date' => '2022-01-01',
'end_date' => 'today',
]),
],
'metrics' => [
new Metric([
'name' => 'sessions',
])
]
]);
foreach ($response['day']->getRows() as $row) {
foreach ($row->getMetricValues() as $metricValue) {
$access['day'] = $metricValue->getValue();
}
}
Dimensions và Metrics có thể tham khảo tại: https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema
Bài viết được tham khảo tại : https://developers.google.com/analytics/devguides/reporting/data/v1/quickstart-client-libraries
Cảm ơn mọi người đã theo dõi !!!