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
versusrole=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.