Skip to content

Instantly share code, notes, and snippets.

@PBillingsby
Created November 5, 2025 18:48
Show Gist options
  • Select an option

  • Save PBillingsby/a16a8f743055bf5628cd73a0e7937834 to your computer and use it in GitHub Desktop.

Select an option

Save PBillingsby/a16a8f743055bf5628cd73a0e7937834 to your computer and use it in GitHub Desktop.
salesforce connector

The Salesforce Connector allows you to import data from your Salesforce account into Moonnox. Once connected, you can:

  • Sync Salesforce records to power contextual insights in your agents
  • Import attachments for analysis or ingestion into your Moonnox Content library
  • Pull Salesforce Reports to surface key metrics, summaries, and deal insights
  • Tag imported data by Project or Team for scoped agent context

All Salesforce user roles and permission hierarchies are respected by the connector.

Prerequisites

  • Salesforce admin or integration permissions required
  • API access must be enabled
  • Supported Salesforce editions: Enterprise, Unlimited, Developer

Linking Your Salesforce Account

To begin importing data:

  1. From your Moonnox dashboard, go to Pathfinder → Cloud Connectors.
  2. Click New connection job and then Salesforce.
  3. Select your desired job:
    • Salesforce General
    • Salesforce Attachments
    • Salesforce Reports
  4. Authenticate via OAuth and confirm access. {{< figure src="/images/configuring-moonnox/Integrations/salesforce-01.png" caption="Authorize the Moonnox Salesforce Connector by granting access to your Salesforce account." alt="Authorizing Salesforce" >}}
  5. Once linked, Salesforce imports will be available in the New connection job options. {{< alert text="You must have Salesforce admin privileges or integration permissions to authorize the Moonnox Salesforce Connector." />}}

Reusing an Existing Connection

Salesforce only allows up to five unique active connections per instance for any integrated app. If your organization already has a Salesforce connection configured in Moonnox, we recommend reusing that connection instead of creating a new one.

When creating a new import job, you’ll see a Reuse Existing Connection dropdown. Select your existing Salesforce environment to avoid reaching Salesforce’s connection limit.

Available Import Types

Before diving into each import type, it helps to understand how Salesforce imports work in general.

How Imports Work

All Salesforce imports in Moonnox are:

  • Read-only: Data is synced from Salesforce but cannot be edited within Moonnox.
  • Scoped to user permissions: Only records visible to the authenticating user are imported.
  • Tag-aware: You can assign tags once imported to control which agents and projects have access.
  • Filterable: Apply filters to narrow imported data to specific fields, values, or record types.

1. Salesforce General

Use this option to import structured CRM data like:

  • Accounts, Contacts, and Opportunities
  • Leads and associated Notes
  • Tasks, Events, and Custom Objects

{{< figure src="/images/configuring-moonnox/Integrations/salesforce-02.png" alt="Selecting Salesforce data to import to Moonnox" >}}

Typical Uses:

  • Reference recent opportunity notes during call prep
  • Summarize deal updates across accounts
  • Compare account notes with conversation data

{{< alert text="Restricted records will not be visible if your Salesforce permissions do not allow access." />}}

2. Salesforce Attachments

Import Salesforce file attachments for analysis or ingestion into Moonnox.

{{< figure src="/images/configuring-moonnox/Integrations/salesforce-03.png" caption="Configure your Salesforce Attachments import job and set sync frequency." >}}

Supported File Types: PDFs, Word documents, PowerPoints, CSVs, images, and text files.

{{< figure src="/images/configuring-moonnox/Integrations/salesforce-04.png" caption="Add filters to refine which attachments or records are included in your import." >}}

Typical Uses:

  • Analyze proposals or contracts linked to Opportunities
  • Tag attachments under Sales Enablement or Client Projects
  • Summarize or extract insights from synced documents

{{< alert text="Large files may take additional time to sync. Moonnox automatically retries failed uploads and logs results." />}}

3. Salesforce Reports

Import structured report data into Moonnox for further analysis.

{{< figure src="/images/configuring-moonnox/Integrations/salesforce-reports.png" caption="Select reports from your Salesforce account to import into Moonnox." >}}

Typical Uses:

  • Combine CRM metrics with call or document data
  • Generate natural-language summaries of key reports
  • Feed pipeline data into analytics agents for forecasting

How Agents Use Salesforce Data

Once imported, Salesforce data becomes searchable context for your Moonnox agents. When you import Salesforce records, you'll assign search tags to organize and control access to that data.

Key concept: Agents can only search and reference Salesforce data that matches their configured tag scope. This means your tagging strategy during import determines which agents can access which CRM data.

Quick Example

You import:
├── All Opportunities → tagged "sales-pipeline"
└── Strategic Accounts → tagged "executive-only"

Your agents:
├── Sales Agent (configured with "sales-pipeline" tag) → sees all opportunities
└── Executive Agent (configured with "executive-only" tag) → sees strategic accounts only

Before you import, think about:

  • Which agents need access to this Salesforce data?
  • How will you organize it with tags (by team, data type, sensitivity, time period)?
  • What other data sources will agents combine with Salesforce (calls, documents, reports)?

For more details on how tags work in Moonnox, see Tag Manager docs

Common Query Patterns

Once synced, agents can answer questions like:

  • "What's the status of Acme Corp's opportunities?"
  • "List all leads from the healthcare vertical"
  • "Summarize recent sales calls with prospects who have open opportunities" (cross-source)
  • "Which accounts haven't been contacted in 60+ days?" (cross-source)

Sync Schedules

After importing your data, choose how frequently Moonnox should check for updates:

  • 6 hours - Multiple syncs per day for rapidly changing data
  • 12 hours - Twice-daily updates
  • 18 hours - Once per business day plus overnight
  • 24 hours - Daily sync
  • 36 hours - Every day and a half
  • 48 hours - Every other day

{{< alert text="Salesforce enforces API call limits per 24-hour period. High-frequency syncs or large data volumes may approach these limits. Monitor your Salesforce API usage and adjust sync schedules accordingly to avoid hitting limits." />}}

Filtering Data

Moonnox allows you to apply filters to Salesforce data before import — whether you're syncing objects (like Contacts, Leads, or Opportunities) or importing Reports. Filters help you refine the scope of imported data to keep your workspace focused and relevant.

Supported Filter Targets

You can add filters to both:

  • Objects (Tables): e.g., only import Contacts where Name = Acme
  • Reports: e.g., only pull records where Priority = High

Available Operators

  • equals
  • not equal to
  • less than
  • greater than
  • less or equal
  • greater or equal
  • contains
  • does not contain
  • starts with

Defining Filters

Each filter consists of three parts:

  • Field: The column or property to filter on
  • Operator: The condition used to compare values
  • Value: The specific text or number used for comparison
Field Example Operator Value Description
Subject contains Renewal Imports only records with “Renewal” in the subject
Priority equals High Includes only high-priority tasks
Company / Account equals Acme Corp Restricts import to a specific account
Lead Source not equal to Referral Excludes leads from referrals
Contact Name starts with A Imports contacts whose names begin with “A”

{{< alert text="You can stack multiple filters to narrow results. Filters are evaluated in order and combined with AND logic by default. OR logic is not currently supported." />}}

Best Practices

  • Keep it focused: Start broad, then add filters gradually to avoid excluding useful context
  • Use naming conventions: Apply consistent naming or tag-based filters to help downstream agent queries
  • Preview before import: Use the preview option to confirm which records match your filters before saving

Managing Imports

After setup, you can manage all Salesforce connections under Pathfinder → Cloud Connectors

  • View Sync History: Check the status, success, or failure of recent imports.
  • Edit Import Settings: Adjust frequency, tags, or object mappings.
  • Reauthorize Connection: Update credentials when tokens expire. Salesforce OAuth tokens expire periodically. If you encounter sync errors, reauthorize by reconnecting your Salesforce account in Moonnox. For persistent issues, check Salesforce connected app policies or token revocation settings.

{{< alert text="Salesforce sessions expire periodically. Reauthorize your connection if sync errors appear in your import log." />}}

Permissions and Security

Salesforce Permissions

Moonnox respects Salesforce field- and record-level security. Data imported depends on:

  • The authenticated Salesforce user’s permissions
  • Visibility to specific records and fields
  • API access granted by your organization

Moonnox Permissions

Imported Salesforce data follows Moonnox’s permission model. Only users with access to the connected Project or tags can view or query this data.

{{< alert text="Agents and users will never see Salesforce records or attachments outside of their assigned Project or permission scope." />}}

Best Practices

Selective Import
Only sync the objects or reports most relevant to your workflow. Reducing volume speeds up imports and ensures agents focus on high-value context.

Tagging for Context
Apply consistent tag structures (e.g., sales, pipeline, contracts) during import to help agents retrieve contextually relevant data faster.

Attachment Management
Organize attachments by Project type (e.g., Proposals, Client Docs, Internal Notes) before ingestion to simplify search and filtering in Moonnox.

Report Cadence
Schedule report syncs during off-peak hours or align them with your CRM update cadence to avoid partial or stale data imports.

Permission Awareness
Always verify that imported records reflect the intended user scope. For sensitive data (e.g., contract values, client info), use restricted Projects or locked tags.

FAQ

Q: How do I know when my last sync happened? A: In Pathfinder -> Cloud Connectors, there is a column named Last Run Date that will tell you when your data was synced last {{< figure src="/images/configuring-moonnox/Integrations/salesforce-latest-sync.png" alt="Display for last sync of job" >}} Q: What happens if I change filters after the initial import? A: Moonnox will refresh the dataset to match your new filter criteria—removing records that no longer qualify and importing only records that meet the updated conditions.

Q: Why don't I see all the fields from my Salesforce object?

A: Not all fields appear due to field-level permissions in Salesforce, unsupported field types, or because the connector only imports selected fields based on your import configuration.

Q: Does sync frequency affect Salesforce API usage?

A: Yes, more frequent syncs increase Salesforce API calls, which can impact your org's API limits. Choose sync intervals that balance data freshness with API consumption.

Q: What happens when a record is deleted in Salesforce?

A: Deletions in Salesforce will be reflected in Moonnox on the next sync, removing the corresponding records if the sync is configured to handle deletions.

Q: Can I edit imported Salesforce records in Moonnox?

A: No, imported Salesforce records are read-only in Moonnox and cannot be edited directly within the platform. Changes must be made in Salesforce and will sync on the next update.

Q: How do I remove imported Salesforce data from Moonnox?

A: You can remove imported data by deleting the sync configuration or disabling the connection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment