Push API streaming data lengkap (V2)

Sekilas: Streaming data event atribusi ke titik akhir sisi server Anda. 

4409_Push_API_V2-01.pngPush API V2.0

Bacaan terkait: Panduan migrasi Push API V1.0 ke V2.0

Tentang Push API

Push API melakukan stream pesan event atribusi ke titik akhir sisi server Anda segera setelah data tersedia. Dengan melakukannya, Anda dapat mengikuti perjalanan pengguna melalui beberapa environment dan titik sentuh.

Volume data yang dikirim ke titik akhir dapat dikurangi dengan membatasi:

  • Topik pesan dan jenis event in-app yang dipilih.
  • Bidang dipilih.

Solusi pengiriman data AppsFlyer lainnya yang mungkin menarik bagi Anda:

Tipe pesan event

 Tipe pesan event tersedia
(✓ = tersedia, - tidak berlaku)

Jenis Atribusi

Topik

Bidang conversion_type

Non-organik

(bidang campaign_type)

Organik (bidang campaign_type)
Akuisisi User Instalasi(*) Install UA Organik
Akuisisi pengguna  Instal in-app event Install UA Organik

Retargeting

Re-engagement Re-engagement Retargeting -
Penargetan ulang  In-App Event Re-engagment Re-engagement Retargeting -
Penargetan ulang  Atribusi ulang  Penginstalan ulang Retargeting -
Akuisisi pengguna  Penginstalan ulang Penginstalan ulang UA Organik
Retargeting In-App Event Re-attribution Penginstalan ulang Retargeting -
* Beberapa penginstalan terkait atribusi lihat-tayang diatribusikan ke sumber media yang dibatasi.

Struktur pesan dan bidang unik

Pesan Push API tergantung pada metode HTTP:

  • GET: parameter data ditambahkan ke string URL
  • POST: parameter data terdapat dalam isi pesan dalam format JSON
  • Contoh berikut berisi bidang null/kosong. Postback real tidak memiliki kolom kosong atau nol.

Bidang tersedia

  • Pesan Push API berisi bidang seperti yang dijelaskan di sini.
  • Bidang tambahan akan ditambahkan dari waktu ke waktu, karena ini ditambahkan ke platform AppsFlyer. Mekanisme impor/penguraian Anda harus mempertimbangkan hal ini. 

Format bidang stempel waktu

  • Untuk bidang stempel waktu di UTC: format   yyyy-mm-dh jj: mm: ss.sss. Sebagai contoh, ditampilkan sebagai 2019-09-17 00: 09: 25.123 Suatu event terjadi pada pukul 14:00 waktu Tokyo. Waktu event dikonversi ke UTC, yaitu 05:00. Waktu yang dicatat adalah waktu UTC. 
  • Untuk bidang tanda waktu di zona waktu dipilih: format yyyy-mm-dd hh:mm:ss.sss±th:tm. Misalnya 2019-01-20 04:51:16.000+0000 . Sebuah event berlangsung pada pukul 14:00 waktu Tokyo. Waktu event yang ditampilkan dicatat sebagai 14:00+09:00. 09:00 adalah zona waktu Tokyo. 
Bidang Push API unik (relatif terhadap alat pengiriman data lainnya)
Nama tampilan Nama V2.0 Catatan 
Mata uang yang dipilih selected_currency Ini adalah pengaturan tingkat aplikasi yang berlaku pada saat pesan API dikirim.
Pendapatan dalam mata uang yang dipilih mata uang income_in_selected_
 
Biaya Dalam Mata Uang yang Dipilih mata uang cost_in_selected_
 
Zona Waktu Unduhan Perangkat yang Dipilih device_download_time_selected_
timezone
 
Zona Waktu Terpilih Waktu Touch Teratribusi attributed_touch_time_
selected_timezone
 
Instal Zona Waktu yang Dipilih Waktu zona waktu install_time_selected_
 
Zona Waktu Dipilih Waktu Event Zona waktu event_time_selected_
 
Zona Waktu yang dipilih selected_timezone Ini adalah pengaturan tingkat aplikasi yang berlaku pada saat pesan API dikirim.

Mengatur Push API

 Perhatian

Jangan gunakan API untuk mengirim data ke pihak ketiga karena:

  • Melakukan hal tersebut mungkin membuat Anda melanggar peraturan privasi seperti CCPA jika pengguna tidak setuju mengirimkan data mereka ke pihak ketiga.
  • Beberapa sumber media, membatasi penggunaan data tingkat pengguna yang mereka sediakan, dibagikan dengan pihak ketiga, atau keduanya. Pastikan Anda mematuhi ketentuan penggunaan sumber media.
    Contohnya, Facebook, Twitter, Snapchat, Pinterest.

Untuk mengatur Push API, lengkapi daftar tindakan.

Daftar tindakan Push API
No. Tindakan  Untuk mengatur titik akhir (endpoint) yang baru
1

Lengkapi daftar periksa persyaratan sisi server

2

Rencanakan pengaturan titik akhir menggunakan perencanaan daftar periksa

3

Konfugurasikan titik akhir

Persyaratan sisi server (server Anda)

Pastikan server Anda sesuai dengan persyaratan yang tercantum di sini. 

Persyaratan sisi server
URL Titik Akhir
  • Nama domain yang valid
  • Titik akhir sama yang dapat digunakan per aplikasi. 
  • Jumlah maksimum titik akhir per aplikasi: 6
Kode pengembalian titik akhir Pada saat menerima pesan, titik akhir harus mengembalikan kode status HTTP 200.
Izinkan server AppsFlyer

Izinkan daftar alamat IP server AppsFlyer di firewall dan sistem keamanan Anda untuk memastikan komunikasi dengan titik akhir.

Versi TLS
Port 

Port: 80, 443

Perencanaan daftar periksa Push API

  • Gunakan daftar periksa berikut untuk merencanakan pengaturan titik akhir. Angka-angka pada gambar sesuai dengan jumlah baris pada daftar periksa.

Titik akhir 

PushAPI_us-en.png

Tabel perencanaan titik akhir

No.

Pengaturan

Detail Pengaturan Anda
1

Metode

POST atau GET  

2

URL Titik Akhir

-  
3 Tipe pesan event
  • Pilih setidaknya satu tipe pesan event.
  •  Untuk memilih pesan in-app event, Anda harus merekam in-app event. Sampai Anda melakukannya, Anda tidak dapat memilih pesan in-app event. 

InappSelectionDisabled_us-en.png

 

4

Bidang 

Daftar bidang bersifat umum untuk semua tipe pesan

Pilih bidang yang wajib diisi.

  • Bidang yang paling umum dipilih sebelumnya secara default.
  • Kami tidak mengirim bidang kosong/null
 
5

Tipe in-app event

 

Menyaring berdasarkan in-app event untuk mengurangi lalu-lintas yang dikirim ke titik akhir Anda.

  • Pilih satu atau lebih atau semua in-app event. Harap diperhatikan! Jika event tidak ditampilkan dalam daftar, carilah. 
  • Jika Anda memilih semua, maka in-app event yang baru ditambahkan secara otomatis. 
  • Anda hanya dapat memilih in-app event setelah direkam setidaknya sekali. 
  • mceclip1.png
 
Facebook Apakah Anda ingin mengirimkan data pengguna yang diatribusikan ke Facebook? 
  • Untuk menerima data Facebook, pastikan Anda telah menerima persyaratan layanan Facebook. 

 

Mengatur dan mengelola titik akhir

  • Sesi ini berisi prosedur untuk menambahkan, menguji, mengubah, dan menghapus titik akhir. 
  • Hanya admin yang dapat membuat perubahan pada pengaturan API. Anggota tim dapat melihat pengaturan Push API.
AppsFlyerAdmin_us-en.pngUntuk menambahkan titik akhir Push API:
  1. Buka Integrasi > Akses APIGulir ke bawah ke sesi Push API.
    Sesi Push API ditampilkan.
  2. Klik Tambahkan Titik Akhir. 
  3. Pilih metode HTTP: POSTatau GET
  4. Masukkan Titik akhir URL.  Jika Anda mendapatkan pesan bahwa URL ini tidak aman, hubungi tim dukungan AppsFlyer.
  5. Pilih satu tipe event atau lebih. Catatan! Jika pesan in-app event dinonaktifkan, ini berarti tidak ada in-app event yang telah direkam hingga saat ini. 
  6. Pilih bidang untuk mengisi pesan Push API. Catatan:
    • Bidang-bidang wajib yang selalu dikirim: ID Aplikasi, Nama event, Waktu event, IDFA (iOS) atau ID Iklan (Android)
    • Gunakan kontrol yang dijabarkan pada gambar berikut untuk memilih bidang opsional. 

      PushAPIFieldSelect1.jpg

      • Bidang yang paling sering dipilih adalah bidang yang dipilih sebelumnya. Bidang-bidang tersebut dapat dihapus dari pilihan.
      • Pilih bidang opsional sesuai kebutuhan.
      • Gunakan  Hapus semua  untuk menghapus semua bidang pilihan.
      • Kami tidak mengirim bidang null/kosong dan kunci terkait. Pertimbangkan ini saat merencanakan proses impor/parsing Anda.
  7. Pilih satu atau lebih (hingga 52 event) atau  Semua in-app event.
    • Daftar ini diisi oleh tipe event yang telah direkam. Jika acara tidak ada, kirimkan event dengan tipe ini menggunakan perangkat uji. 
  8. Klik Simpan
    Push API sekarang aktif
    Data konversi dikirim ke titik akhir.
  9. Uji titik akhir menggunakan prosedur berikut.
  10. Jika Anda ingin menerima event yang diatribusikan ke Facebook, Anda harus menerima Persyaratan layanan Facebook terlebih dahulu.

Untuk menguji titik akhir:

  1. Klik Kirim Pengujian. 
    Pesan hasil pengujian tampil di bawah tombol Kirim pengujian 
    Sebuah pesan ujian dikirimkan ke titik akhir. Jika pengujian gagal, pastikan memiliki alamat IP AppsFlyer yang diizinkan
  2. Periksa apakah titik akhir menerima pesan pengujian.
    Salinan pesan yang dikirim sebagai berikut.

Uji pesan POST dan GET API

Pesan POST berikut dikirim sebagai pesan pengujian

{                  
  "idfv": "123456789",
  "device_category": "phone",
  "af_sub1": "sub1-12345",
  "customer_user_id": "Customer User ID",
  "is_lat": null,
  "contributor_2_af_prt": "attributionagency",
  "bundle_id": "bundleIdentifier_test",
  "gp_broadcastreferrer": "",
  "contributor_2_touch_time": "2019-12-31 00:05:42.805",
  "contributor_3_touch_type": "click",
  "event_source": "SDK",
  "af_cost_value": "10",
  "contributor_1_match_type": "id_matching",
  "app_version": "app_version",
  "contributor_3_af_prt": "attributionagency",
  "custom_data": null,
  "contributor_2_touch_type": "click",
  "gp_install_begin": "2019-12-31 00:07:14.000",
  "city": "Redmond",
  "amazon_aid": "9173fe74-0578-4658-a461-ebb0b4fce6d6",
  "gp_referrer": "af_tranid=000712-31122019254604&pid=pdsagency_int&c=pushapi_v2",
  "af_cost_model": "CPI",
  "af_c_id": "cid12345",
  "attributed_touch_time_selected_timezone": "2019-12-31 00:06:32.891+0000",
  "selected_currency": "EUR",
  "app_name": "com.pds.pushapi2.v2.transparent.com",
  "install_time_selected_timezone": "2019-12-31 00:07:14.961+0000",
  "postal_code": "98052",
  "wifi": false,
  "install_time": "2019-12-31 00:07:14.961",
  "operator": "ORANGE",
  "attributed_touch_type": "click",
  "af_attribution_lookback": "25d",
  "keyword_match_type": null,
  "af_adset_id": "adset12345",
  "device_download_time_selected_timezone": "2019-12-31 00:07:14.961+0000",
  "contributor_2_media_source": "contrib2",
  "contributor_2_match_type": "id_matching",
  "api_version": "2.0",
  "attributed_touch_time": "2019-12-31 00:06:32.891",
  "revenue_in_selected_currency": null,
  "is_retargeting": false,
  "country_code": "US",
  "gp_click_time": "2019-12-31 00:07:12.000",
  "contributor_1_af_prt": "attributionagency",
  "match_type": "id_matching",
  "appsflyer_id": "e126a3b3-3406-4196-a964-563c9ae44ff8",
  "dma": "819",
  "http_referrer": "https://www.amazon.com/gp/bestsellers/gift-cards/ref=sv_gc_0",
  "af_sub5": "sub5-12345",
  "af_prt": "attributionagency",
  "event_revenue_currency": null,
  "store_reinstall": null,
  "install_app_store": null,
  "media_source": "pdsagency_int",
  "deeplink_url": null,
  "campaign": "pushapi_v2",
  "af_keywords": "keywords12345",
  "region": "NA",
  "cost_in_selected_currency": "1000",
  "event_value": null,
  "ip": "20.168.174.166",
  "oaid": null,
  "event_time": "2019-12-31 00:07:14.961",
  "is_receipt_validated": null,
  "contributor_1_campaign": "camp1",
  "af_sub4": "sub4-12345",
  "imei": null,
  "contributor_3_campaign": "camp3",
  "event_revenue_usd": null,
  "af_sub2": "sub2-12345",
  "original_url": "https://app.appsflyer.com/com.pds.pushapi2.v2.transparent.com?c=pushapi_v2&pid=pdsagency_int&clickid=click12345&af_ref=000632-31122019&advertiserId=9173fe74-0578-4658-a461-ebb0b4fce6d6&android_id=3e06b4caebc19356&sha1_android_id=sha12345&af_siteid=136396&af_sub_siteid=sub_siteid12345&af_c_id=cid12345&af_adset=adset12345&af_adset_id=adset12345&af_ad=ad12345&af_ad_id=adid12345&af_ad_type=adtype12345&af_channel=channel12345&af_keywords=keywords12345&is_retargeting=False&af_dp=ebay%3A%2F%2Fshoppingcart&af_web_dp=www.dp.com&af_sub1=sub1-12345&af_sub2=sub2-12345&af_sub3=sub3-12345&af_sub4=sub4-12345&af_sub5=sub5-12345&af_cost_model=CPI&af_cost_value=10&af_cost_currency=EUR&sha1_advertising_id=sha12345&sha1_el=sha12345&af_installpostback=false&af_force_dp=true&af_chrome_lp=true&af_ec=1&af_click_lookback=25d&af_viewthrough_lookback=1h&af_reengagement_window=2d&af_prt=attributionagency",
  "contributor_2_campaign": "camp2",
  "android_id": "3e06b4caebc19356",
  "contributor_3_media_source": "contrib3",
  "af_adset": "adset12345",
  "af_ad": "ad12345",
  "state": "WA",
  "network_account_id": null,
  "device_type": "Samsung::SH-220",
  "idfa": null,
  "retargeting_conversion_type": null,
  "af_channel": "channel12345",
  "af_cost_currency": "EUR",
  "contributor_1_media_source": "contrib1",
  "keyword_id": null,
  "device_download_time": "2019-12-31 00:07:14.961",
  "contributor_1_touch_type": "click",
  "af_reengagement_window": "2d",
  "af_siteid": "136396",
  "language": "English",
  "app_id": "com.pds.pushapi2.v2.transparent.com",
  "contributor_1_touch_time": "2019-12-31 00:06:07.847",
  "event_revenue": null,
  "af_ad_type": "adtype12345",
  "carrier": "carrier",
  "event_name": "install",
  "af_sub_siteid": "sub_siteid12345",
  "advertising_id": "9173fe74-0578-4658-a461-ebb0b4fce6d6",
  "os_version": "6.0",
  "platform": "android",
  "af_sub3": "sub3-12345",
  "contributor_3_match_type": "id_matching",
  "selected_timezone": "UTC",
  "af_ad_id": "adid12345",
  "contributor_3_touch_time": "2019-12-31 00:05:17.757",
  "user_agent": "Dalvik/1.6.0 (Linux; U; Android 6.0; Redmi Note 4 Build/KOT49I.F320S22g",
  "is_primary_attribution": null,
  "sdk_version": "v4.8.0",
  "event_time_selected_timezone": "2019-12-31 00:07:14.961+0000"
}

Mengubah titik akhir

AppsFlyerAdmin_us-en.png Untuk mengubah pengaturan titik akhir: 

  1. Buka Integrasi > Akses API.
    Gulir ke bawah ke sesi Push API.
    Sesi Push API ditampilkan.
  2. Temukan titik akhir yang akan diubah.
  3. Lakukan perubahan.
  4. Klik Save.

Menghapus titik akhir

Untuk menghapus titik akhir:

  1. Buka Integrasi > Akses API.
    Gulir ke bawah ke bagian akses Push API. 
  2. Klik Hapus titik akhir.
  3. Klik Save.
    Titik akhir dihapus. 

Migrasi titik akhir dari V1.0 ke V2.0

AppsFlyerAdmin_us-en.pngUntuk memigrasi titik akhir dari V1.0 ke V2.0:

  1. Buka Integrasi > Akses APIGulir ke bawah ke sesi Push API.
    Sesi Push API ditampilkan.
  2. Temukan titik akhir yang akan dimigrasi.
  3. Pilih bidang untuk mengisi pesan Push API.
    • Bidang-bidang wajib yang selalu dikirim: ID Aplikasi, Nama event, Waktu event, IDFA (iOS) atau ID Iklan (Android)
    • Gunakan kontrol yang dijabarkan pada gambar berikut untuk memilih bidang opsional. 

      PushAPIFieldSelect1.jpg

      • Bidang yang paling sering dipilih adalah bidang yang dipilih sebelumnya. Bidang-bidang tersebut dapat dihapus dari pilihan.
      • Pilih bidang opsional sesuai kebutuhan.
      • Gunakan  Hapus semua  untuk menghapus semua bidang pilihan.
      • Dalam waktu dekat, kami akan berhenti mengirim bidang null/kosong serta kode terkait. Pertimbangkan ini saat merencanakan proses impor/parsing Anda.
  4. Pilih satu atau lebih (hingga 52 event) atau  Semua in-app event.
    • Daftar ini diisi oleh tipe event yang telah direkam. Jika acara tidak ada, kirimkan event dengan tipe ini menggunakan perangkat uji. 
  5. Klik Simpan
    • Push API telah dimigrasi. 
    • Data konversi terus dikirim ke titik akhir.

Pesan kesalahan titik akhir

Petunjuk: Pesan URL ini tidak aman tampil saat Anda mengatur URL titik akhir.

Tindakan yang diperlukan: Hubungi tim dukungan AppsFlyer; termasuk ID aplikasi, dan screenshot pesan kesalahan.  

Penyelesaian Masalah, karakteristik pembatasan

Pengiriman pesan pengujian gagal

Jika Anda tidak menerima pesan pengujian dan Anda membatasi akses ke server berdasarkan alamat IP: pastikan Anda memiliki semua alamat IP AppsFlyer yang diizinkan

Duplikat penargetan ulang event dalam aplikasi

Penargetan ulang event dalam aplikasi diduplikasi ketika event pembelian terjadi sebagai bagian dari kampanye penargetan ulang selama jendela interaksi ulang UA. Ini dilakukan untuk menghubungkan pendapatan dengan sumber media UA dan sumber media penargetan ulang. 

Anda hanya akan mendapatkan duplikat event jika Anda telah mengaktifkan keduanya:

  • Instal in-app event
  • Event penargetan ulang dalam aplikasi 

Event dalam aplikasi yang dikaitkan dengan sumber media UA (instal acara dalam aplikasi) sebagai bagian dari kampanye penargetan ulang memiliki bidang is_primary_attribution=false. 

 Contoh

  • Seorang pengguna memasang example_app, yang dikaitkan dengan ua_network
  • Kemudian pengguna berinteraksi ulang dengan  kampanye penargetan ulang example_app pada retar_network dan melakukan pembelian.

Event pembelian dalam aplikasi dikirim dua kali dengan rincian berikut:

Menargetkan ulang bidang event dalam aplikasi
Jenis event Media Source is_retargeting re_targeting conversion_type is_primary_
atribusi 
Instal in-app event ua_network True re-engagement atau atribusi ulang  False
Menargetkan ulang event dalam aplikasi retar_network True re-engagement atau atribusi ulang  True


Bagaimana cara mengidentifikasi event penargetan ulang duplikat?

Bidang is_primary_attribution boolean   mengidentifikasi sumber media primer dan sekunder dalam kampanye penargetan ulang:

  • False: mengidentifikasi sumber media UA asli. Catatan : Ini adalah satu-satunya skenario di mana nilainya adalah false. 
  • True: mengidentifikasi sumber media keterlibatan ulang 

Alasan untuk ini adalah sebagai berikut: Jika pengguna, sebagai hasil dari kampanye penargetan ulang, terlibat dengan kampanye, jendela interaksi ulang terbuka. Sumber media interaksi ulang dianggap sebagai sumber media primer ketika jendela interaksi ulang terbuka, dan sumber UA adalah sekunder. Setelah jendela ditutup, sumber media UA asli kembali menjadi yang utama. 

Pilihan pesan in-app event message dinonaktifkan

InappSelectionDisabled_us-en.png

  • Pesan in-app event hanya dapat dipilih setelah salah satu in-app event telah direkam.
  • Gunakan perangkat uji untuk menghasilkan in-app event atau gunakan S2S API untuk melakukannya secara manual. 

Data Facebook tidak ada

Secara default, Facebook tidak merilis data tingkat pengguna hingga Anda menyetujui Persyaratan Layanan Facebook.

Setelah Anda menyetujui persyaratan, data tingkat pengguna yang berasal dari Facebook dan sumber data lengkap lainnya dikirim via Push API.

Pesan push dan CloudFront tidak ada

Apakah Anda menggunakan Amazon CloudFront sebagai titik akhir Anda? Jika demikian, periksa apakah CloudFront menolak pesan dengan kode tolak 421. Jika demikian, lihat Memilih Cara CloudFront Melayani Permintaan HTTPS

Keterbatasan dan Sifat

Sifat-sifat
Sifat Catatan 
Jaringan iklan Tidak untuk digunakan oleh jaringan iklan. 
Agensi Tidak untuk digunakan oleh agensi
Zona waktu khusus aplikasi Didukung
Mata uang khusus aplikasi  Didukung
Keterbatasan ukuran Tak dapat diterapkan
Organik  Ya
Non-organik Ya
Kesegaran data Terus menerus  
Data historis Tidak didukung. Data event dikirim setelah mengonfigurasi Push API. Jika Anda membutuhkan data lengkap historis, gunakan Pull API. 
Akses anggota tim Anggota tim dapat melihat pengaturan Push API tetapi tidak dapat melakukan perubahan. 
Apakah artikel ini membantu?