Skip to main content

Google Workspace Graph Schema

Complete reference for the node labels, relationships, and properties created by the --connector google-workspace connector.

Entity Types​

Document​

Google Docs, Sheets, and Slides files.

PropertyTypeDescription
namestringFile name
driveIdstringGoogle Drive file ID
mimeTypestringMIME type (e.g., application/vnd.google-apps.document)
webViewLinkstringURL to open the file in browser
createdTimedatetimeWhen the file was created
modifiedTimedatetimeWhen the file was last modified
descriptionstringFile description (if set)
poleTypestringAlways "Object"

Folder​

Drive folder hierarchy.

PropertyTypeDescription
namestringFolder name
driveIdstringGoogle Drive folder ID
parentIdstringParent folder ID
poleTypestringAlways "Object"

Person​

Users from Drive, Calendar, and Gmail.

PropertyTypeDescription
namestringDisplay name (falls back to email prefix)
emailAddressstringEmail address (dedup key)
displayNamestringFull display name
poleTypestringAlways "Person"

DecisionThread​

Comment threads extracted from Google Docs/Sheets/Slides. The core entity for decision trace extraction.

PropertyTypeDescription
namestring"Thread: {content[:80]}"
driveCommentIdstringGoogle Drive comment ID
contentstringThe original question or proposal
quotedContentstringThe document text the comment was anchored to
resolvedbooleantrue if the thread was resolved (decision made)
resolutionstringThe final reply content (the "answer")
createdTimedatetimeWhen the thread was started
modifiedTimedatetimeWhen the thread was last updated
participantCountintegerNumber of unique participants
poleTypestringAlways "Object"

Reply​

Individual replies within a comment thread.

PropertyTypeDescription
namestring"Reply {n} on {thread_name}"
contentstringReply text
createdTimedatetimeWhen the reply was posted
poleTypestringAlways "Object"

Revision​

Document revision metadata (not content).

PropertyTypeDescription
namestring"Rev {id} of {file_name}"
revisionIdstringDrive revision ID
modifiedTimedatetimeWhen the revision was created
mimeTypestringRevision MIME type
sizestringRevision size in bytes
poleTypestringAlways "Event"

Activity​

Drive Activity API events (create, edit, move, share, etc.).

PropertyTypeDescription
namestring"{ActionLabel}: {targetName} at {timestamp}"
actionTypestringAction key: create, edit, move, rename, delete, restore, permissionChange, comment, suggestion
actionLabelstringHuman-readable action: Created, Edited, Moved, etc.
timestampdatetimeWhen the action occurred
targetNamestringName of the file acted on
poleTypestringAlways "Event"

Meeting​

Calendar events (only when --gws-include-calendar is enabled).

PropertyTypeDescription
namestring"{summary} ({date})"
eventIdstringGoogle Calendar event ID
summarystringEvent title
startTimedatetimeEvent start time
endTimedatetimeEvent end time
locationstringEvent location
statusstringEvent status (confirmed, tentative, cancelled)
descriptionstringEvent description
attendeeCountintegerNumber of attendees
poleTypestringAlways "Event"

EmailThread​

Gmail thread metadata (only when --gws-include-gmail is enabled). No message body text is imported.

PropertyTypeDescription
namestringEmail subject (or "Thread {id}")
threadIdstringGmail thread ID
subjectstringThread subject line
messageCountintegerNumber of messages in the thread
lastMessageTimestringTimestamp of the last message
participantEmailslist[string]Email addresses of all participants
poleTypestringAlways "Object"

Relationship Types​

RelationshipFromToDescription
HAS_COMMENT_THREADDocumentDecisionThreadA comment thread exists on this document
HAS_REPLYDecisionThreadReplyA reply in the discussion thread
AUTHORED_BYDecisionThread / ReplyPersonWho wrote the comment or reply
RESOLVED_BYDecisionThreadPersonWho resolved the thread (made the decision)
HAS_REVISIONDocumentRevisionA revision of this document
REVISED_BYRevisionPersonWho made the edit
ACTIVITY_ONActivityDocumentAn action was performed on this file
PERFORMED_BYActivityPersonWho performed the action
CONTAINED_INDocumentFolderFile is in this folder
CREATED_BYDocumentPersonFile owner/creator
SHARED_WITHDocumentPersonFile is shared with this person
ATTENDEE_OFPersonMeetingPerson attended this meeting
ORGANIZED_BYMeetingPersonMeeting organizer
DISCUSSED_INDocumentMeetingDocument was linked from meeting description/attachments
PARTICIPANT_INPersonEmailThreadPerson participated in this email thread
THREAD_ABOUTEmailThreadDocumentEmail thread references this document (via Drive URL)
RELATES_TO_ISSUEDecisionThread / Document / Reply / EmailThread / MeetingIssueCross-connector link to a Linear issue (detected via identifier pattern like ENG-123)

Decision Traces​

Resolved comment threads are also exported as decision traces in the NormalizedData.traces format:

{
"id": "trace-gdrive-{commentId}",
"task": "Decision on '{fileName}': {content[:100]}",
"outcome": "Resolved: {lastReplyContent[:200]}",
"steps": [
{"thought": "...", "action": "Alice started discussion", "observation": "Posted at ..."},
{"thought": "...", "action": "Bob replied", "observation": "Replied at ..."},
{"thought": "Thread resolved", "action": "Alice resolved the discussion", "observation": "Resolved at ..."}
]
}

Only resolved threads produce traces. Unresolved threads are queryable as DecisionThread nodes with resolved: false.

Agent Tools​

When --connector google-workspace is active, 10 additional agent tools are injected into the generated agent:

ToolDescription
find_decisionsSearch resolved comment threads by keyword, document, or person
decision_contextFind all decision threads, meetings, and emails about a topic
who_decidedFind people involved in decisions, weighted by participation
document_timelineComplete document history: revisions, comments, decisions, meetings
open_questionsUnresolved comment threads, optionally filtered by document
meeting_decisionsDocuments discussed and decisions made around a meeting
knowledge_contributorsTop contributors by revisions, decisions, and meetings
trace_decision_to_sourceTrace a claim back through the decision chain
stale_documentsDocuments with open threads that haven't been updated recently
cross_referenceFind all Google Workspace context for a Linear issue

Cross-Connector Linking​

The connector scans text content for Linear-style issue references using the pattern [A-Z]{2,10}-\d+ (e.g., ENG-123, PROJECT-456). References found in DecisionThread content, Reply content, Document names, EmailThread subjects, and Meeting descriptions create RELATES_TO_ISSUE relationships to Issue nodes from the Linear connector.

Drive file URLs (https://docs.google.com/document/d/{id}/...) found in Calendar event descriptions, attachments, and Gmail thread snippets create DISCUSSED_IN and THREAD_ABOUT relationships linking external context back to imported documents.