Panduan perbandingan Drive API v2 dan v3

Versi Google Drive API terbaru adalah v3. Performa di v3 menjadi lebih baik karena penelusuran hanya menampilkan subkumpulan kolom. Gunakan versi saat ini kecuali jika Anda memerlukan koleksi v2. Jika Anda menggunakan v2, pertimbangkan untuk bermigrasi ke v3. Untuk melakukan migrasi, lihat Bermigrasi ke Drive API v3. Untuk mengetahui daftar lengkap perbedaan versi, lihat Referensi perbandingan Drive API v2 dan v3.

Jika Anda ingin terus menggunakan v2, lihat perubahan Panduan untuk Drive API v2 untuk mempelajari bagaimana beberapa petunjuk dalam panduan v3 harus diubah untuk developer v2.

Untuk mempelajari peningkatan Drive API v3 lebih lanjut, Anda dapat menonton video berikut dari engineer Google yang membahas desain API baru.

Peningkatan V3

Untuk mengoptimalkan performa dan mengurangi kompleksitas perilaku API, v3 memberikan peningkatan berikut dibandingkan dengan versi API sebelumnya:

  • Penelusuran file dan drive bersama tidak menampilkan resource lengkap secara default, hanya sebagian kolom yang umum digunakan yang akan ditampilkan. Untuk detail selengkapnya tentang fields, lihat metode files.list dan metode drives.list.
  • Hampir semua metode yang menampilkan respons sekarang memerlukan parameter fields. Untuk mengetahui daftar semua metode yang memerlukan fields, lihat referensi Drive API.
  • Resource yang memiliki kemampuan duplikat telah dihapus. Beberapa contohnya:
    • Metode files.list menyelesaikan fungsi yang sama seperti koleksi Children dan Parents, sehingga dihapus dari v3.
    • Metode Realtime.* telah dihapus.
  • Data Aplikasi tidak ditampilkan secara default dalam penelusuran. Di v2, Anda dapat menetapkan cakupan drive.appdata, dan menampilkan data aplikasi dari metode files.list serta metode changes.list, tetapi hal ini memperlambat performanya. Di v3, Anda menetapkan cakupan drive.appdata, dan juga menetapkan parameter kueri spaces=appDataFolder untuk meminta data aplikasi.
  • Semua operasi update menggunakan PATCH, bukan PUT.
  • Untuk mengekspor Google Dokumen, gunakan metode files.export.
  • Perilaku metode changes.list berbeda. Gunakan token halaman buram, bukan ID perubahan. Untuk melakukan polling pada pengumpulan perubahan, panggil metode changes.getStartPageToken terlebih dahulu untuk nilai awal. Untuk kueri berikutnya, metode changes.list akan menampilkan nilai newStartPageToken.
  • Metode update kini menolak permintaan yang menentukan kolom yang tidak dapat ditulis.
  • Kolom exportFormats dan importFormats v2 di resource about adalah daftar format impor atau ekspor yang diizinkan. Di v3, ini adalah peta jenis MIME dari target yang mungkin untuk semua impor atau ekspor yang didukung.
  • Alias appdata dan appfolder v2 sekarang menjadi appDataFolder di v3.
  • Resource properties dihapus dari v3. Resource files memiliki kolom properties yang berisi key-value pair sebenarnya. Kolom properties berisi properti publik, dan kolom appProperties berisi properti pribadi, sehingga kolom visibilitas tidak diperlukan.
  • Kolom modifiedTime di resource files memperbarui saat terakhir kali ada yang mengubah file. Di v2, kolom modifiedDate hanya dapat diubah saat update jika Anda menetapkan kolom setModifiedDate.
  • Kolom viewedByMeTime di resource files tidak diperbarui secara otomatis.
  • Untuk mengimpor format Google Dokumen, tetapkan target mimeType yang sesuai dalam isi resource. Di v2, Anda menetapkan ?convert=true.
  • Operasi impor menampilkan error 400 jika formatnya tidak didukung.
  • Pembaca dan pengomentar tidak dapat melihat izin.
  • Alias me untuk izin dihapus.
  • Beberapa fungsi tersedia sebagai bagian dari resource permintaan, tetapi tersedia sebagai parameter permintaan. Misalnya:
    • Di v2, Anda dapat menggunakan children.delete untuk menghapus file turunan dari folder induk.
    • Di v3, Anda menggunakan files.update pada turunan dengan ?removeParents=parent_id di URL.

Perbedaan lainnya

Nama kolom dan parameter berbeda di v3. Contohnya antara lain:

  • Properti name menggantikan title di resource files.
  • Time adalah akhiran untuk semua kolom tanggal dan waktu, bukan Date.
  • Operasi daftar tidak menggunakan kolom items untuk memuat kumpulan hasil. Jenis resource menyediakan kolom untuk hasil (seperti files atau changes).