-
Notifications
You must be signed in to change notification settings - Fork 0
iolib.drive
ghs_8r0vvYi2iPQVhT73iiQlYAGIt193sQ4E8XEE edited this page Nov 21, 2022
·
6 revisions
# iolib.drive.DrivePermissions.create
create(self, item_id, email, role, type=user)Create a permission for a Google Drive item (file, folder or drive).
Parameters
----------
item_id : str
Google Drive item id.
email : str
Email for permission (user email, group email...).
role : str
Permission role. This must be in (writer, commenter, reader).
type : str, default='user'
Permission type. This must be in (user, group, domain, anyone)
Returns
-------
result : dict(id)
Dictionary with permission id.
# iolib.drive.DrivePermissions.delete
delete(self, item_id, permission_id)Delete a permission for a Google Drive item (file, folder or drive).
Parameters
----------
item_id : str
Google Drive item id.
permission_id : str
Permission id.
Returns
-------
None
# iolib.drive.DrivePermissions.list
list(self, item_id)List permissions for a given Google Drive item (file, folder or drive).
Parameters
----------
item_id : str
Google Drive item id.
Returns
-------
df : pandas.DataFrame(id, type, email, role)
# iolib.drive.DrivePermissions.update
update(self, item_id, permission_id, role)Update a permission for a Google Drive item (file, folder or drive).
Parameters
----------
item_id : str
Google Drive item id.
permission_id : str
Permission id.
role : str
Permission role. This must be in (writer, commenter, reader).
Returns
-------
result : dict(id)
Dictionary with permission id.
# iolib.drive.build
build(readonly=False, service_account_json=None)# iolib.drive.list_drive
list_drive(name=None, folder_id=None, mime_type=None, drive_id=None, service_account_json=None)List files from Google Drive.
Parameters
----------
name : str, optional
Google drive file name.
folder_id : str, optional
Google drive folder id. Found in the url as
https://drive.google.com/drive/folders/<folder_id>.
mime_type : str, optional
Drive file mime type to filter.
Example: 'application/vnd.google-apps.spreadsheet'.
drive_id : str, optional
Shared drive if if any, formatted as folder_id.
service_account_json : str, optional
Path to service account json file. Default as the one set in the
environment as `GOOGLE_APPLICATION_CREDENTIALS`
Returns
-------
df : pandas.DataFrame(kind, id, name, mime_type)
# iolib.drive.list_drive_permissions
list_drive_permissions(item_id=None, service_account_json=None)List permissions for a given Google Drive item (file, folder or drive).
Parameters
----------
item_id : str
Google Drive item id.
service_account_json : str, optional
Path to service account json file. Default as the one set in the
environment as `GOOGLE_APPLICATION_CREDENTIALS`
Returns
-------
df : pandas.DataFrame(id, type, email, role)
See also
--------
iolib.drive.DrivePermissions
# iolib.drive.set_drive_permissions
set_drive_permissions(item_id, permissions, mode=update, service_account_json=None)Set permissions to a given Google Drive item (file, folder or drive). The
permissions provided can either update or replace the existing ones (update
doesn't delete permissions). Owner permissions won't be deleted, even if
the owner is not part of the permissions passed and the mode is "replace".
Parameters
----------
item_id : str
Google Drive item id.
permissions : list of dicts or pandas.DataFrame
Permissions to set, with required fields "email" and "role", and
optional field "type".
mode : str, default="update"
Either "update" to create/update permissions, or "replace", to
create/update/delete permissions.
service_account_json : str, optional
Path to service account json file. Default as the one set in the
environment as `GOOGLE_APPLICATION_CREDENTIALS`
Returns
-------
None