Internal · Property SOP Sync · staff-only
Admin · Staff Portal · Property SOPs

Property-Level SOPs

Each property's SOPs live in its dedicated Google Drive folder. This page is the sync surface — file-activity events from each Drive trigger manager notifications, file-name validation, and inclusion in the global staff search index.

⚠ Demo data: The Drive folder links below open the real shared folders (so you can verify the sync wiring works), but the metadata on each card — file counts, sub-folder counts, recent-activity rows, last-sync times, naming-violation flags — is illustrative placeholder content showing what the live dashboard will display once the Drive Activity API webhook is connected and the initial index runs. None of these numbers are pulled from the real folders yet.

How the sync works

Each connected Drive folder is watched by a Cloudflare Worker that polls the Google Drive API every 10 minutes (or receives push notifications via the Drive Activity API). When new files appear or existing files change:

Phase 1 properties (per spec)

Plaza Tower — Main Drive
High-rise condominium · 84 units · COA · §718
✓ Synced
Last sync14 minutes ago
Drive folderOpen in Drive ↗
Indexed files412
Folders14 main · 76 sub
📄 04.28.2026 BOD Meeting Packet.pdf2 hr ago
📊 04.2026 Plaza Tower SHORT Financials.pdfyesterday
📄 Smith, Jane Affidavit.pdf3 days ago
Plaza Tower — Staff Drive
Front desk · concierge · maintenance staff resources
✓ Synced
Last sync14 minutes ago
Drive folderOpen in Drive ↗
Indexed files94
📄 Front Desk Schedule — May 2026.xlsx1 hr ago
🎥 How to Use the Call Box.mp42 weeks ago
Tallahassee Center COA
High-rise condominium · COA · §718
⚠ FAQs stale
Last sync22 minutes ago
Drive folderOpen in Drive ↗
Indexed files287
Naming violations3 files flagged
📄 04.28.2026 BOD Meeting Packet.pdf3 hr ago
⚠ April Financials.pdfyesterday — naming flagged
Tallahassee Center — Front Desk
Front desk · concierge · staff resources
✓ Synced
Last sync22 minutes ago
Drive folderOpen in Drive ↗
Indexed files68
Camellia Oaks Condominiums
Condominium · COA · §718
… Connecting
Drive folderOpen in Drive ↗
Initial syncrunning… ~5 min

Additional connected drives

26 additional Drive folders shared with this account. In production these will be auto-mapped to associations on first sync; for now they're listed as raw connections that managers can label.

Awaiting label assignment

File-activity automation rules

Trigger

Meeting packet uploaded → checklist created

When a file matching YYYY.DD.MM BOD Meeting Packet.pdf appears in any property's Meetings folder, a new Pre/During/Post Board Meeting checklist is auto-created and the manager gets a notification.

⚡ Active for all 5 Phase-1 properties
Trigger

Minutes saved → subfolder reminder

When meeting minutes are saved to a property's Drive, the system reminds the manager to create the required YYYY/Annual Members Meeting subfolder if it doesn't exist. Re-pings every 24h until done.

⚡ File-activity webhook
Trigger

Naming-convention validator

Every uploaded file is checked against the file-naming standard. Violations surface on this page and on the property's Monthly Compliance checklist as "items to clean up."

⚡ Real-time
Trigger

Stale property warning

If 30 days pass with no new files for a property whose meeting cadence is monthly, the assigned manager and supervisor receive an escalation email.

⚡ Daily cron
Trigger

Affidavit upload → board onboarding update

When a file named LastName, FirstName Affidavit.pdf appears in BOD Certifications, the board onboarding tracker for that director is auto-updated to "✓ Affidavit signed."

⚡ Per director
Trigger

FAQs date validator

Welcome Letter FAQs and DBPR FAQs documents are checked against last-modified date. If older than Jan 31 of the current year, the welcome-letter mailing wizard blocks new sends until the FAQs are refreshed.

⚡ Annual review enforced

Implementation notes

Access method: Google Drive API (v3) with OAuth — service account on the CAM Workspace tenant. Each property Drive folder is shared with the service account as Reader. Drive Activity API provides push notifications; the Cloudflare Worker handles the webhook and updates the staff portal index.
Why this is better than Wix Velo: Wix Velo can only call Drive API on a per-user OAuth basis, which means one user's permissions limit visibility. A service account on Workspace gives stable, reliable, audit-logged access at the company level. The Cloudflare Worker is also far cheaper than Wix Velo's billing tier.
What to do next: share the 5 Phase-1 property Drives with cam-portal@cmgcam-internal.iam.gserviceaccount.com as Reader. Initial index takes ~3 minutes per 100 files. Auto-sync runs every 10 min by default.