CaptureGoogleDriveChanges 2025.10.9.21

Bundle

com.snowflake.openflow.runtime | runtime-google-drive-nar

Description

Captures changes to a Shared Google Drive and emits a FlowFile for each change that occurs. This includes addition and deletion of files, as well as changes to file metadata and permissions. The processor is designed to be used in conjunction with the FetchGoogleDrive processor.

Tags

authorization, cdc, change data capture, cloud, drive, gcp, google, openflow, permissions, storage, unstructured

Input Requirement

FORBIDDEN

Supports Sensitive Dynamic Properties

false

Properties

PropertyDescription
Drive IDThe ID of the Shared Google Drive to monitor.
GCP Credentials ServiceThe Controller Service used to obtain Google Cloud Platform credentials.

State management

ScopesDescription
CLUSTERStores a token/cursor to track which changes have already been processed.

Relationships

NameDescription
createdThis Relationship is used for any files that are created.
removedThis Relationship is used for any files that are deleted.
updatedThis Relationship is used for any files that are updated.

Writes attributes

NameDescription
google.drive.drive.idThe ID of the Shared Google Drive.
google.drive.file.idThe ID of the file that was changed.
drive.idThe ID of the file that was changed. This is repeated for compatibility with FetchGoogleDrive’s default configuration.
google.drive.file.nameThe name of the file that was changed.
google.drive.change.typeThe type of change that occurred. Possible values are ‘CREATED’, ‘UPDATED’, or ‘DELETED’.
google.drive.change.timeThe timestamp of the change, in milliseconds since the Unix epoch.
google.drive.created.timeThe timestamp when the file was created, in milliseconds since the Unix epoch.
google.drive.webUrlA link for opening the file in a relevant Google editor or viewer in a browser.
google.drive.sizeThe size of the file in bytes.
google.drive.md5The MD5 checksum of the file.
google.drive.versionThe version of the file. This changes based on user and system based updates to the file.
google.drive.mime.typeThe MIME type of the file.
google.drive.lastModifiedBy.displayNameA display name of the user that modified the file.
google.drive.lastModifiedBy.emailAn email of the user that modified the file.
google.drive.permissions.<role>.usersA comma-separated list of email addresses for users with the specified role. Valid roles are ‘owner’, ‘organizer’, ‘fileOrganizer’, ‘writer’, ‘commenter’, ‘reader’. For example, if the owner is john.doe@gmail.com and users jane.doe@gmail.com and jake.doe@gmail.com are readers, there would be an attribute named google.drive.permissions.owner.users with the value john.doe@gmail.com, and an attribute named google.drive.permissions.reader.users with the value _jane.doe@gmail.com, jake.doe@gmail.com_
google.drive.permissions.<role>.groupsA comma-separated list of email addresses for groups with the specified role. Valid roles are ‘owner’, ‘organizer’, ‘fileOrganizer’, ‘writer’, ‘commenter’, ‘reader’. For example, if the owner is employees@openflow-all-dev.iam.gserviceaccount.com and the group contractors@openflow-all-dev.iam.gserviceaccount.com is a reader, there would be an attribute named google.drive.permissions.owner.groups with the value employees@openflow-all-dev.iam.gserviceaccount.com, and an attribute named google.drive.permissions.reader.groups with the value contractors@openflow-all-dev.iam.gserviceaccount.com
google.drive.permissions.<role>.domainsA comma-separated list of domain names for which all users have the given role. Valid roles are ‘owner’, ‘organizer’, ‘fileOrganizer’, ‘writer’, ‘commenter’, ‘reader’. For example, if all users in the domain snowflake.com have the role of reader, there would be an attribute named google.drive.permissions.reader.domains with the value snowflake.com
google.drive.permissions.<role>.publicIf a file is shared publicly, this attribute will be added with a value of ‘true’ for any role that applies to the public.
google.drive.file.pathThe hierarchical path of the file in Google Drive, e.g. ‘parent_folder/child_folder/file.txt’.

See also