32
Integrations — Slack, Google Drive, Salesforce, HubSpot (v8.0)
UAT-32.1
Integrations Settings Page
MediumSteps
- Navigate to /settings/integrations
Verify (3 checks)
- Four provider cards: Slack, Google Drive, Salesforce, HubSpot
- Each card shows provider icon and "Connect" button
- Connected integrations show "Connected" badge and disconnect option
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.2
Slack Integration
MediumSteps
- Click Connect on Slack card
- Complete Slack OAuth
- Select a channel
- Share a document
Verify (5 checks)
- Redirected to /settings/integrations?connected=slack on success
- Card shows "Connected" with workspace name
- Channel dropdown lists workspace channels
- Block Kit message appears in selected channel when document shared
- Event toggles (document viewed, NDA signed, etc.) work correctly
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.3
Google Drive Integration
MediumSteps
- Connect Google Drive
- Export a Fovea document to Drive
Verify (4 checks)
- OAuth grants drive.file scope
- Connected status shows account email
- Document export to Drive creates file in Drive
- Token refresh works for long-lived sessions
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.4
Salesforce Integration
MediumSteps
- Connect Salesforce
- View document with viewer email matching a Salesforce Contact
Verify (4 checks)
- Connected status shows instance URL
- Task created on matching Salesforce Contact after document view
- SOQL contact lookup works correctly
- No error when viewer email has no matching Contact
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.5
HubSpot Integration
MediumSteps
- Connect HubSpot
- View document with viewer email matching a HubSpot Contact
Verify (4 checks)
- Connected status shows portal domain
- Note created on matching HubSpot Contact timeline
- Contact search works correctly
- No error when viewer email has no matching Contact
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.6
Disconnect Integration
MediumSteps
- Click trash/disconnect icon on a connected integration
Verify (4 checks)
- Integration removed from database
- Card returns to "Connect" state
- Encrypted tokens are deleted
- No events dispatched for disconnected provider
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |
UAT-32.7
Event Routing
MediumSteps
- View a document (NDA signed event NOT toggled)
- Sign an NDA (event IS toggled)
Verify (3 checks)
- Document view does NOT trigger Slack message
- NDA signing DOES trigger Slack message
- Event routing respects per-integration toggle settings
| Score | Tester | Date | Notes |
|---|---|---|---|
| ___ | ___ | ___ | ___ |