Referensi Measurement Protocol

Ringkasan

Ada dua bagian dalam pengiriman data ke Google Analytics menggunakan Measurement Protocol:

  1. Transpor - tempat dan cara Anda mengirimkan data
  2. Payload - data yang Anda kirim

Dokumen ini menjelaskan cara transpor dan payload diformat.

Transpor

Endpoint URL

Anda mengirim data menggunakan Measurement Protocol dengan membuat permintaan POST HTTP pada endpoint berikut:

https://www.google-analytics.com/mp/collect

Untuk mengirim peristiwa, berikan permintaan POST berikut:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

Kode respons

Measurement Protocol selalu menampilkan kode status 2xx jika permintaan HTTP diterima. Measurement Protocol tidak menampilkan kode error jika format data payload salah, atau jika data dalam payload salah atau tidak diproses oleh Google Analytics.

Payload

Data dikirim ke Google Analytics menggunakan Data Measurement Protocol dalam dua bagian:

  1. Parameter kueri
  2. Isi JSON POST

Parameter kueri

Nama Parameter Deskripsi

api_secret

Wajib. API Secret yang dibuat melalui UI Google Analytics.

Untuk membuat secret baru, buka di UI Google Analytics:
Admin > Aliran Data > pilih aliran data Anda > Measurement Protocol > Buat

Sebaiknya Anda tetap merahasiakannya untuk organisasi Anda. Jika Anda men-deploy Measurement Protocol di sisi klien, Anda harus merotasi api_secret secara teratur untuk menghindari SPAM yang berlebihan.

firebase_app_id

Wajib. ID Aplikasi Firebase. ID untuk aplikasi Firebase. Terdapat di Firebase console di bagian:
Setelan Project > Umum > Aplikasi Anda > ID Aplikasi

measurement_id

ID Pengukuran. ID untuk Aliran Data. Terdapat di UI Google Analytics pada:
Admin > Aliran Data > pilih aliran data Anda > ID Pengukuran

Isi JSON POST

Kunci Jenis Deskripsi

app_instance_id

string

Wajib. Secara unik mengidentifikasi penginstalan tertentu dari aplikasi Firebase. Nilai ini perlu diambil melalui Firebase SDK.

client_id

string

Wajib. Secara unik mengidentifikasi instance pengguna dari klien web. Lihat bagian kirim peristiwa ke Measurement Protocol.

user_id

string

Opsional. ID unik untuk pengguna. Lihat artikel User-ID untuk analisis lintas platform guna mendapatkan informasi lebih lanjut tentang ID ini.

timestamp_micros

number

Opsional. Stempel waktu Unix (dalam mikrodetik) untuk waktu yang berkaitan dengan peristiwa. Stempel waktu ini hanya boleh disetel untuk mencatat peristiwa yang terjadi di masa lalu. Nilai ini dapat diganti melalui user_property atau stempel waktu peristiwa. Tanggal peristiwa dapat ditetapkan ke maksimal 3 hari kalender sebelumnya berdasarkan zona waktu properti.

user_properties

object Opsional. Properti pengguna untuk pengukuran. Lihat Properti pengguna untuk informasi lebih lanjut.
object Opsional. Menetapkan setelan izin untuk permintaan. Lihat bagian izin untuk mengetahui informasi selengkapnya.

non_personalized_ads

boolean Opsional. Tetapkan ke true untuk menunjukkan bahwa data pengguna tidak boleh digunakan untuk iklan yang dipersonalisasi.

events[]

array Wajib. Array item peristiwa. Maksimal 25 peristiwa dapat dikirim per permintaan. Lihat referensi peristiwa untuk semua peristiwa yang valid.

events[].name

string Wajib. Nama peristiwa. Lihat referensi peristiwa untuk semua opsi.

events[].params

object Opsional. Parameter peristiwa. Lihat peristiwa untuk mengetahui parameter yang disarankan untuk setiap peristiwa.

Atribut consent mengonfigurasi jenis dan status izin. Jika Anda tidak menentukan consent, Google Analytics akan menggunakan setelan izin dari interaksi online yang sesuai untuk instance aplikasi atau klien.

Kunci Jenis Deskripsi

ad_user_data

string

Opsional. Menetapkan izin pengiriman data pengguna dari peristiwa dan properti pengguna permintaan ke Google untuk tujuan iklan.

Harus GRANTED atau DENIED.

ad_personalization

string

Opsional. Menetapkan izin untuk iklan yang dipersonalisasi bagi pengguna.

Harus GRANTED atau DENIED.

Parameter kustom

Selain parameter yang ditetapkan, Anda dapat menyertakan parameter kustom cakupan pengguna, cakupan peristiwa, dan cakupan item di dalam payload Measurement Protocol.

  • Parameter kustom cakupan pengguna dapat disertakan dalam objek user_properties payload.
  • Parameter kustom cakupan peristiwa dapat disertakan dalam objek events[].params payload.
  • Parameter kustom cakupan item dapat disertakan dalam array items untuk setiap peristiwa.

Beberapa peristiwa memiliki parameter yang direkomendasikan. Lihat peristiwa untuk parameter yang direkomendasikan untuk semua peristiwa yang didukung.

Nama yang dicadangkan

Nama peristiwa yang dicadangkan

Nama peristiwa berikut dicadangkan dan tidak dapat digunakan:

  • ad_activeview
  • ad_click
  • ad_exposure
  • ad_query
  • ad_reward
  • adunit_exposure
  • app_clear_data
  • app_exception
  • app_install
  • app_remove
  • app_store_refund
  • app_update
  • app_upgrade
  • dynamic_link_app_open
  • dynamic_link_app_update
  • dynamic_link_first_open
  • error
  • firebase_campaign
  • firebase_in_app_message_action
  • firebase_in_app_message_dismiss
  • firebase_in_app_message_impression
  • first_open
  • first_visit
  • in_app_purchase
  • notification_dismiss
  • notification_foreground
  • notification_open
  • notification_receive
  • notification_send
  • os_update
  • session_start
  • user_engagement

Nama parameter yang dicadangkan

Nama parameter berikut dicadangkan dan tidak dapat digunakan:

  • firebase_conversion

Selain itu, nama parameter tidak boleh diawali dengan:

  • _ (underscore)
  • firebase_
  • ga_
  • google_
  • gtag.

Nama properti pengguna yang dicadangkan

Nama properti pengguna berikut dicadangkan dan tidak dapat digunakan:

  • first_open_time
  • first_visit_time
  • last_deep_link_referrer
  • user_id
  • first_open_after_install

Selain itu, nama properti pengguna tidak dapat diawali dengan:

  • _ (underscore)
  • firebase_
  • ga_
  • google_