Bermigrasi dari Drive Activity API v1

Panduan ini menjelaskan perbedaan antara Google Drive Activity API v1 dan v2, serta cara mengubah aplikasi v1 untuk mendukung API v2.

Otorisasi

API v1 menggunakan cakupan ini:

  • https://www.googleapis.com/auth/activity

API v2 memerlukan salah satu cakupan berikut:

  • https://www.googleapis.com/auth/drive.activity
  • https://www.googleapis.com/auth/drive.activity.readonly

Nama resource

Di API v1, ID untuk objek seperti item dan pengguna Google Drive adalah string buram. Di API v2, objek ini biasanya direferensikan menggunakan nama resource. Untuk informasi selengkapnya, lihat Panduan Desain Cloud API.

ID ini biasanya dapat dikonversi. Misalnya, item Drive di v2 API dirujuk menggunakan nama resource items/ITEM_ID_V1.

Permintaan

Format permintaan untuk v2 mirip dengan v1. Secara khusus, Anda masih dapat meminta aktivitas untuk file Drive atau ancestor Drive, meskipun perlu diperhatikan bahwa Anda harus memformat parameter permintaan tersebut sebagai nama resource dengan menambahkan awalan items/.

"Pengelompokan" kini disebut Penggabungan, dan parameter permintaan source dan userId telah dihapus.

Ada juga opsi Filter baru yang memungkinkan Anda membatasi jenis data aktivitas yang ditampilkan dalam respons.

Tindakan

Di API v1, jenis aktivitas, dan data yang terkait dengan aktivitas tersebut, berada di kolom terpisah. Misalnya, jika kolom primaryEventType berisi nilai move, aplikasi akan mengasumsikan bahwa kolom move tingkat teratas diisi dengan induk yang ditambahkan dan dihapus.

Di v2 API, kolom ini tidak lagi berbeda. Pesan ActionDetail hanya memiliki satu kumpulan kolom. Ini menunjukkan jenis tindakan dan berisi detail yang terkait dengan tindakan tersebut. Misalnya, ActionDetail yang mewakili pemindahan hanya menetapkan kolom move, dan kolom tersebut mencantumkan induk yang ditambahkan dan dihapus.

Kolom primaryEventType API v1 kira-kira sesuai dengan primaryActionDetail v2.

Actors

Di API v1, aktivitas yang ditampilkan berisi User jika pelaku adalah pengguna yang diketahui, dan secara opsional berisi kolom tingkat atas seperti fromUserDeletion untuk kasus khusus.

Di v2 API, kumpulan jenis Actor yang lebih lengkap tersedia, dan user.knownUser diisi saat pelaku adalah pengguna yang diketahui. Jika aplikasi Anda memerlukan informasi mendetail tentang pengguna, aplikasi tersebut dapat membuat kueri dari People API dengan meneruskan kolom KnownUser personName ke metode people.get.

Target

Di API v1, target selalu berupa item Drive. Di v2 API, target dapat berupa jenis objek lain di Drive. Misalnya, perubahan pada drive memiliki jenis target Drive. Folder root drive bersama masih ditampilkan (sebagai DriveItem di kolom root), tetapi bukan target langsung aktivitas. Konsep serupa berlaku untuk resource FileComment, yang kolom parent-nya merujuk ke item Drive yang berisi rangkaian komentar target.

Aktivitas gabungan

Di API v1, gaya respons berubah saat strategi konsolidasi ("pengelompokan") ditetapkan. Secara khusus, saat penggabungan diaktifkan, setiap aktivitas berisi singleEvents penyusun dan combinedEvent yang meringkas aktivitas umum di antara peristiwa penyusun tersebut. Saat penggabungan dinonaktifkan, kolom combinedEvent berisi peristiwa awal yang tidak digabungkan untuk setiap aktivitas. Setiap peristiwa ini dapat mewakili lebih dari satu tindakan, seperti pembuatan bersama dengan pembagian.

Di API v2, gaya respons tidak berubah berdasarkan strategi konsolidasi, karena DriveActivity yang ditampilkan selalu berisi kumpulan lengkap aktor, target, dan tindakan.