Mengelola proposal akses yang tertunda

Proposal akses adalah proposal dari pemohon kepada pemberi persetujuan untuk memberikan akses kepada penerima ke item Google Drive.

Penyetuju dapat meninjau dan menindaklanjuti semua proposal akses yang belum diselesaikan di seluruh file Drive. Artinya, Anda dapat mempercepat proses persetujuan dengan mengirim kueri secara terprogram untuk proposal akses, lalu menyelesaikannya. Fitur ini juga memungkinkan proposal dilihat secara gabungan oleh pemberi persetujuan.

Google Drive API menyediakan resource accessproposals sehingga Anda dapat melihat dan menyelesaikan proposal akses yang tertunda. Metode accessproposals resource berfungsi pada file, folder, file dalam drive bersama, tetapi tidak pada drive bersama.

Istilah berikut khusus untuk proposal akses:

  • Pemohon: Pengguna yang memulai proposal akses ke item Drive.
  • Penerima: Pengguna yang menerima izin tambahan pada file jika proposal akses diberikan. Sering kali penerima sama dengan pemohon, tetapi tidak selalu.
  • Penyetuju: Pengguna yang bertanggung jawab untuk menyetujui (atau menolak) proposal akses. Hal ini biasanya terjadi karena mereka adalah pemilik dokumen atau mereka memiliki kemampuan untuk membagikan dokumen.

Mencantumkan proposal akses yang menunggu keputusan

Untuk mencantumkan semua proposal akses tertunda pada item Drive, panggil metode list() pada resource accessproposals dan sertakan parameter jalur fileId.

Hanya pemberi persetujuan pada file yang dapat mencantumkan proposal yang menunggu keputusan pada file. Penyetuju adalah pengguna dengan kemampuan can_approve_access_proposals pada file. Jika pemohon bukan penyetuju, daftar kosong akan ditampilkan. Untuk mengetahui informasi selengkapnya tentang capabilities, lihat Memahami kemampuan file.

Isi respons terdiri dari objek AccessProposal yang mewakili daftar proposal akses yang belum diselesaikan pada file.

Objek AccessProposal mencakup info tentang setiap proposal seperti pemohon, penerima, dan pesan yang ditambahkan pemohon. Objek ini juga mencakup AccessProposalRoleAndView yang mengelompokkan role yang diusulkan pemohon dengan view. Karena role adalah kolom berulang, beberapa kolom dapat ada untuk setiap proposal. Misalnya, proposal mungkin memiliki objek AccessProposalRoleAndView dari role=reader dan view=published, ditambah objek AccessProposalRoleAndView tambahan dengan hanya nilai role=writer. Untuk mengetahui informasi selengkapnya, lihat Tampilan.

Teruskan parameter kueri berikut untuk menyesuaikan penomoran halaman atau memfilter proposal akses:

  • pageToken: Token halaman, diterima dari panggilan daftar sebelumnya. Berikan token ini untuk mengambil halaman berikutnya.

  • pageSize: Jumlah maksimum proposal akses yang akan ditampilkan per halaman.

Menyelesaikan proposal akses yang menunggu keputusan

Untuk menyelesaikan semua proposal akses tertunda pada item Drive, panggil metode resolve() pada resource accessproposals dan sertakan parameter jalur fileId dan proposalId.

Metode resolve() menyertakan parameter kueri action yang menunjukkan tindakan yang harus dilakukan pada proposal. Objek Action melacak perubahan status proposal sehingga kita tahu apakah proposal tersebut diterima atau ditolak.

Metode resolve() juga menyertakan parameter kueri opsional role dan view. Satu-satunya peran yang didukung adalah writer, commenter, dan reader. Jika peran tidak ditentukan, nilai defaultnya adalah reader. Parameter kueri opsional tambahan send_notification memungkinkan Anda mengirim notifikasi email kepada peminta saat proposal disetujui atau ditolak.

Sama seperti metode list(), pengguna yang menyelesaikan proposal harus memiliki kemampuan can_approve_access_proposals pada file. Untuk mengetahui informasi selengkapnya tentang capabilities, lihat Memahami kemampuan file.

Proposal diselesaikan menggunakan pola yang sama yang tercantum di bagian Skenario untuk berbagi resource Drive. Jika ada beberapa proposal untuk pengguna yang sama, tetapi dengan peran yang berbeda, hal berikut berlaku:

  • Jika satu proposal diterima dan satu ditolak, peran yang diterima berlaku untuk item Drive.
  • Jika kedua proposal diterima pada saat yang sama, proposal dengan izin yang lebih tinggi (misalnya, role=writer versus role=reader) akan diterapkan. Proposal akses lainnya dihapus dari item.

Setelah mengirim proposal ke metode resolve(), tindakan berbagi selesai. AccessProposal tidak lagi ditampilkan melalui metode list(). Setelah proposal diterima, pengguna harus menggunakan kumpulan permissions untuk memperbarui izin pada file atau folder. Untuk mengetahui informasi selengkapnya, lihat Memperbarui izin.