An integration does more than connect Novus to another service.
It also determines which external resources Novus can access and what operations the connected account is allowed to perform.
For example:
Novus
↓
Connected Google Account
↓
Google Sheets / Google Drive
↓
Authorized Resources
A correctly configured integration should provide enough access for the workflow to function without unnecessarily exposing unrelated information.
Understanding an Integration Connection
A connection represents an authorized relationship between Novus and an external service.
For example:
Novus Server
→ Google Account
→ Support Spreadsheet
A connection may then be used by one or more supported workflows.
The exact connection and permission options available depend on the integration and Novus version enabled for your deployment.
Connection vs Destination
These are different concepts.
Connection
Identifies the external account or service authorization.
Example:
Support Operations Google Account
Destination
Identifies the specific resource used by the workflow.
Example:
Spreadsheet: Novus Support Tracker
or:
Drive Folder: Novus Ticket Archive
Think of it as:
Connection
→ Who provides access?
Destination
→ Where should the data go?
Example
A Google account may have access to:
- Support Tracker
- Development Tracker
- Ticket Archive
- Application Archive
Connecting the account does not mean every workflow should use every resource.
Each workflow should still point to the appropriate destination.
Use an Appropriate AccountFor organizational integrations, consider using an account intended for organizational operations rather than an administrator's unrelated personal account.
For example:
Better
Support Operations Account
instead of:
Personal Administrator Account
This makes ownership easier to manage if administrators change later.
Why Account Ownership MattersSuppose an integration is connected using one administrator's personal account.
Later:
- The administrator leaves the project.
- Their Google access is removed.
- Their account is disabled.
- Their password or security configuration changes.
The Novus integration may lose access to important resources.
Using an organizationally controlled account reduces this dependency.
Principle of Least PrivilegeA connected account should have only the access required to perform its job.
This is known as the principle of least privilege.
For example, if Novus only needs to update:
Novus Support Tracker
there is no operational reason for the support workflow to depend on access to unrelated private documents.
Google Sheets PermissionsGoogle Sheets commonly uses access levels such as:
- Viewer
- Commenter
- Editor
If Novus needs to create or update records, the connected account generally needs sufficient edit access to the target spreadsheet.
A Viewer-only account may be able to access the resource but not perform the required write operation.
Example Sheets Permission ProblemSuppose:
Connected Account
has:
Viewer
access to:
Novus Support Tracker
The integration tries to:
Create Row
The operation may fail because the account cannot edit the spreadsheet.
The connection itself may still appear valid.
This is why:
Connected
does not always mean:
Authorized for the requested action
Google Drive PermissionsGoogle Drive destinations also require appropriate access.
For example, if Novus needs to create an archive inside:
Novus Ticket Archive
the connected account must have sufficient permission to create the supported file in that destination.
Parent Folder PermissionsWhen using Google Drive, review the parent folder.
For example:
Novus Ticket Archive
→ General
→ Technical
→ Payment
Access inherited from the parent folder can affect the resources inside it.
Do not review only the individual transcript file.
Discord Permissions and Google Permissions Are SeparateA private Discord ticket does not automatically create a private Google resource.
For example:
Discord
#payment-ticket-1042
may only be visible to:
- Ticket Owner
- Payment Staff
But if its archive is placed in a broadly shared Google Drive folder, additional people may gain access.
Always review both permission systems.
Example Incorrect ConfigurationDiscord
Payment ticket access:
Payment Team Only
Google Drive
Payment archive folder:
All Moderators
This creates a privacy mismatch.
Better ConfigurationDiscord
Payment ticket:
Authorized Payment Staff
Google Drive
Payment archive:
Authorized Payment Staff
The external destination should follow the same general sensitivity requirements as the original data.
Separate Sensitive ResourcesDo not force every support workflow into the same spreadsheet or Drive folder.
For example:
General Support
Sheet: General Support Tracker
Drive: General Archive
Technical Support
Sheet: Technical Tracker
Drive: Technical Archive
Payment Support
Sheet: Restricted Payment Tracker
Drive: Restricted Payment Archive
This allows different permission policies.
Shared ResourcesA spreadsheet or folder can be shared with the connected account instead of being owned by it.
For example:
Organization Owner
owns:
Novus Support Tracker
and shares it with:
Novus Integration Account
This can work well because the organization retains ownership while the integration account receives the required access.
Ownership vs AccessDo not confuse:
Owns the resource
with:
Can access the resource
Novus may not need the connected account to own every resource.
It only needs the permissions required by the configured workflow.
Avoid Unnecessary Public SharingDo not solve integration permission problems by changing a private resource to:
Anyone with the link
This may make the workflow appear easier to configure, but it can unnecessarily expose support information.
Instead, grant the connected account the appropriate direct access.
Never Share Credentials With StaffStaff members should not need the Google account password simply because Novus uses that account.
Use proper account authorization and resource sharing.
Avoid sharing:
- Passwords
- Recovery codes
- Authentication tokens
- Session information
- API credentials
between staff members.
AuthorizationWhen connecting an external service, the provider may ask you to authorize specific permissions.
Read the authorization request before approving it.
Make sure:
- You selected the intended account.
- The account belongs to the intended organization or administrator.
- You understand what the integration needs.
- You are not accidentally authorizing the wrong Google account.
A common mistake is being signed into several Google accounts.
For example:
- Personal Gmail
- Business Account
- Support Account
Then the administrator accidentally authorizes:
Personal Gmail
instead of:
Support Account
Always verify the account shown during authorization.
Connection OwnershipYour team should know who is responsible for maintaining each integration.
For example:
| Integration | Responsible Team |
|---|---|
| Google Sheets Support Tracker | Support Administration |
| Google Drive Archive | Server Administration |
| Bug Tracker | Development Team |
| Application Tracker | Community Management |
This prevents integrations from becoming abandoned configurations.
Document Your Integration OwnershipFor important production integrations, record:
- Integration name
- Purpose
- Connected account
- Responsible administrator/team
- Destination
- Sensitive-data classification
- Last successful test
Do not document passwords or authentication secrets in this record.
Example Integration Register| Integration | Purpose | Destination | Owner |
|---|---|---|---|
| Support Tracker | Ticket reporting | Support Sheet | Support Admin |
| Ticket Archive | Transcript storage | Support Drive | Server Admin |
| Bug Reports | Development tracking | Bug Sheet | Dev Team |
This becomes especially useful on larger servers.
Revoked AccessAn integration can stop working even if nobody changes the Novus configuration.
For example, someone may remove the connected account from:
Novus Support Tracker
The Novus mapping still points to the same spreadsheet, but the connected account no longer has permission.
Common Causes of Lost AccessExternal access can change because:
- Resource permission was removed.
- Connected account was disabled.
- Authorization was revoked.
- Organization security policy changed.
- Resource ownership changed.
- Shared folder access changed.
- Resource was deleted.
- Connected account changed.
These are external configuration changes, not necessarily Novus errors.
Reconnecting an IntegrationIf authorization expires or is revoked, the integration may need to be reconnected.
A safe reconnection process is:
1. Identify the affected connection.
2. Verify the intended external account.
3. Confirm the account still has access to required resources.
4. Reauthorize the integration using the intended account.
5. Verify destinations and mappings.
6. Run a test workflow.
Do not assume reconnecting automatically fixes unrelated destination or mapping problems.
Reconnecting Does Not Fix EverythingSuppose Google authorization is valid, but someone deleted:
Technical
from the spreadsheet.
Reconnecting Google will not recreate the missing worksheet unless the integration explicitly provides such behavior.
Always determine whether the problem is:
Connection
Permission
Destination
Mapping
or:
Workflow
Connection Health vs Workflow HealthThese should be considered separately.
Connection Health
Can Novus communicate with the external service?
Resource Access
Can the connected account access the selected destination?
Mapping Health
Do the configured sources and destinations still exist?
Workflow Health
Did the expected trigger and action execute?
This distinction makes troubleshooting much faster.
Example Troubleshooting FlowSuppose a ticket closes but no Google Sheets update appears.
Check:
Step 1 — Connection
Is Google still connected?
↓
Step 2 — Account
Is the correct account connected?
↓
Step 3 — Permission
Can that account edit the spreadsheet?
↓
Step 4 — Destination
Does the spreadsheet and worksheet still exist?
↓
Step 5 — Mapping
Does the Status mapping still point to the correct column?
↓
Step 6 — Trigger
Did the Ticket Closed workflow run?
This is better than immediately deleting and rebuilding the integration.
Changing the Connected AccountSometimes an organization needs to move an integration from one account to another.
For example:
Old
Administrator Personal Account
↓
New
Organization Support Account
Do this carefully.
Safe Account MigrationA recommended migration process is:
1. Prepare the new account.
Give it access to the required Sheets and Drive folders.
2. Verify permissions manually.
Confirm the new account can access the resources.
3. Connect or reauthorize using the new account.
4. Review destinations.
Make sure the expected resources are still selected.
5. Review mappings.
Confirm nothing changed.
6. Run test tickets.
Test Sheets and Drive separately.
7. Remove old account access only after successful testing.
This reduces downtime.
Do Not Remove the Old Account Too EarlyIf you remove the old account before confirming the new connection works, production integrations may immediately stop.
Complete the transition first.
Then remove unnecessary old access.
Administrator DepartureIf the administrator responsible for an integration leaves the project:
- Review all integrations they managed.
- Identify resources they personally own.
- Transfer ownership where appropriate.
- Move authorization to an organizationally controlled account where possible.
- Remove unnecessary former-administrator access.
- Test every affected workflow.
Do not wait until an integration fails.
Changing Google Drive OwnershipIf important archive folders are owned by a personal account, consider moving organizational control to an appropriate account or shared organizational structure where supported.
The goal is to avoid critical archives depending entirely on one individual.
Changing Google Sheets OwnershipThe same principle applies to spreadsheets.
Important production trackers should remain accessible to the organization even if one administrator is unavailable.
Removing a ConnectionBefore disconnecting an external account, determine which workflows depend on it.
For example:
Google Connection A
may be used by:
- General Support Tracker
- Technical Support Tracker
- Ticket Archive
- Applications
Disconnecting it could affect all of them.
Before DisconnectingCheck:
- Which integrations use the connection?
- Which categories depend on it?
- Are there pending tickets?
- Is transcript archiving dependent on it?
- Is another account ready?
- Have you tested the replacement?
Disconnect only when you understand the impact.
Do Not Delete External Data AutomaticallyDisconnecting an integration should not be treated as permission to delete existing external records.
For example:
Disconnecting Google Sheets should not imply:
Delete all ticket rows
Likewise:
Disconnecting Google Drive should not imply:
Delete all archived transcripts
Connection management and data retention are separate concerns.
Multiple ConnectionsLarger organizations may intentionally use multiple external accounts.
For example:
Support Connection
Used for:
- General Support
- Technical Support
Finance Connection
Used for:
- Payment Support
Community Connection
Used for:
- Guild Applications
- Streamer Applications
This can provide stronger separation between departments.
Benefits of Multiple ConnectionsMultiple connections can improve:
- Permission isolation
- Ownership clarity
- Security
- Department separation
However, they also increase configuration complexity.
Use multiple connections only when there is a clear operational reason.
One Connection for Small CommunitiesA smaller server may only need:
One organizational Google account
with access to:
- Support Tracker
- Ticket Archive
- Applications
This is easier to maintain.
You can still separate permissions through destination sharing and folder structure where appropriate.
Sensitive Integration AccessOnly trusted administrators should be able to change integrations that handle sensitive support data.
Changing a destination could redirect information to the wrong external resource.
For example:
Payment Support
currently maps to:
Restricted Payment Tracker
An unauthorized configuration change could redirect it to:
Public Staff Tracker
Integration configuration should therefore be treated as an administrative permission.
Review Changes CarefullyImportant integration changes should be tested after modifying:
- Connected account
- Spreadsheet
- Worksheet
- Drive folder
- Ticket Category
- Mapping
- Trigger
- Permission
- Form field
A configuration may remain syntactically valid while producing the wrong operational result.
Periodic Access ReviewPeriodically review production integrations.
Ask:
- Is this connection still required?
- Does the connected account still belong to the organization?
- Does it have unnecessary access?
- Are former staff still shared on the resource?
- Are sensitive folders properly restricted?
- Are destinations still active?
- Are workflows still being used?
This prevents old configurations from becoming long-term security risks.
Example Quarterly ReviewFor each integration:
Connection: Active
Account: Correct
Destination: Correct
Permissions: Reviewed
Mapping: Current
Trigger: Current
Test: Passed
You do not need to constantly reconfigure working integrations, but periodic verification is valuable.
Connection Security ChecklistFor every production connection:
- Use the intended external account.
- Prefer organizational ownership where practical.
- Avoid unnecessary personal-account dependency.
- Grant only required permissions.
- Do not expose resources publicly to fix permission problems.
- Do not share account passwords.
- Protect recovery and authentication information.
- Review sensitive destinations separately.
- Know which administrator owns the configuration.
- Document the integration purpose.
- Review access when staff roles change.
- Remove unnecessary former-staff access.
- Test after authorization changes.
- Test after destination permission changes.
- Review all dependent workflows before disconnecting.
Verify:
- Connected account can access the spreadsheet.
- Required worksheet exists.
- Account can perform the required action.
- Sensitive worksheets are appropriately restricted.
- Public sharing is disabled unless intentionally required.
- Former staff do not retain unnecessary access.
- Production mappings point to the correct resource.
Verify:
- Connected account can access the archive folder.
- Required subfolders exist.
- Account can perform the required archive operation.
- Sensitive folders are restricted.
- Parent-folder permissions are understood.
- Public sharing is disabled unless intentionally required.
- File organization matches Ticket Categories.
- Archive ownership will survive administrator changes.
For a smaller community:
Connection
One organizational Google account
Google Sheets
Novus Support Tracker
Google Drive
Novus Ticket Archive
Access
Server Owner + selected Support Administrators
Keep the configuration simple while maintaining appropriate privacy.
Recommended Larger Server SetupFor a larger organization:
Support Operations
Connection: Support Account
Resources:
- General Support Tracker
- Technical Tracker
- General Archive
- Technical Archive
Sensitive Operations
Connection: Restricted Operations Account
Resources:
- Payment Tracker
- Payment Archive
Community Management
Connection: Community Account
Resources:
- Guild Applications
- Streamer Applications
- Community Archive
This provides clearer separation of responsibilities.
Recommended Security ModelA strong integration model follows:
Member Data
↓
Novus Workflow
↓
Authorized Connection
↓
Approved Destination
↓
Authorized Staff Only
Every step should have a clear reason for accessing the information.
Never Use Integrations as a Shortcut Around PermissionsIntegrations should extend your support workflow, not bypass security.
If a user cannot access a sensitive Discord ticket, they should not automatically gain access to its external archive simply because they can access a shared Google folder.
Maintain equivalent or stronger protections outside Discord.
Final Connection ReviewBefore considering an integration production-ready, verify:
Who owns the connection?
Which external account is connected?
What can that account access?
Which Novus workflows use it?
Where does each workflow send data?
Who can access those destinations?
What happens if the account is removed?
Who is responsible for maintaining it?
If your team can answer all of these clearly, your integration configuration is much easier to maintain safely.
Next Step
Continue to Testing & Troubleshooting Integrations.