Skip to main content

Documentation Index

Fetch the complete documentation index at: https://hc.pillargtm.com/llms.txt

Use this file to discover all available pages before exploring further.

Connector Setup Guide

PILLAR connects to your revenue stack to build a unified scoring and intelligence layer. This guide walks you through connecting every supported data source.

How Data Gets Into PILLAR

PILLAR ingests data through three mechanisms:
  1. OAuth Connectors — For CRMs, email/calendar, and select tools. You authorize PILLAR once, and data flows automatically on a recurring schedule.
  2. API Key Connectors — For product analytics, support ticketing, and NPS tools. You provide an API key or token, and PILLAR pulls data on a schedule.
  3. CSV Import — For data not available via API (e.g., seat counts, utilization metrics). Upload a file and PILLAR maps columns to fields.

Sync Cadence

Connector TypeDefault CadenceConfigurable
CRM (Salesforce, HubSpot, Dynamics 365)Every 15 minutes (incremental)Yes — can be set to 5, 15, 30, or 60 minutes
Email & Calendar (Google Workspace, Microsoft 365)Every 5 minutesNo
Product Usage ToolsEvery 60 minutesYes — can be set to 15, 30, or 60 minutes
Support TicketingEvery 30 minutesYes
NPS / SentimentEvery 60 minutesYes
Call Intelligence (Gong)Every 4 hoursNo
CSV ImportManual uploadN/A

The Field Mapping UI

After connecting any data source, PILLAR auto-discovers the available fields and maps them to PILLAR’s canonical data model. You can review and customize mappings via Settings > Integrations > Field Mapping on any connector card.

Field Mapping Reference

See all 126+ fields PILLAR can ingest, with default CRM field names for Salesforce and HubSpot

CRM Connectors

CRM connectors are the foundation of PILLAR. They provide the core data for accounts, contacts, opportunities, leads, and contracts.

What You’ll Need

  • A Salesforce org with API access enabled
  • A Salesforce user with at least Read access to Account, Contact, Opportunity, Lead, and (optionally) Contract and Case objects
  • Admin permissions in PILLAR to configure connectors
PILLAR uses OAuth 2.0 with the Salesforce Connected App flow. No passwords or security tokens are stored — only the OAuth refresh token. Your Salesforce admin may need to pre-authorize the PILLAR Connected App in Setup > App Manager.

Steps to Connect

  1. In PILLAR, navigate to Settings > Integrations.
  2. Click Connect on the Salesforce card.
  3. You will be redirected to Salesforce’s OAuth consent screen. Log in with your Salesforce credentials and click Allow.
  4. PILLAR auto-discovers your org’s schema and maps fields. The initial sync begins immediately.
  5. Review the auto-mapped fields by clicking Field Mapping on the connector card. Fix any unmapped required fields.

What Syncs

CRM ObjectPILLAR TableKey Fields
AccountaccountsName, ARR, Segment, Industry, State, Owner
ContactcontactsName, Email, Title, Account ID, Buying Role
OpportunityopportunitiesName, Amount, Stage, Close Date, Account ID
LeadleadsName, Email, Company, Status, Lead Score
ContractcontractsAccount ID, Start Date, End Date, Value, Status
Casesupport_ticket_snapshotsAccount ID, Subject, Status, Priority, Severity

Score Write-Back

PILLAR pushes computed scores back to Salesforce as custom fields on the Account object:
PILLAR ScoreSalesforce FieldType
Health Score (0-100)PILLAR_Health_Score__cNumber
Risk Score (0-100)PILLAR_Risk_Score__cNumber
Priority Score (0-100)PILLAR_Priority_Score__cNumber
You must create these three custom Number fields on the Account object in Salesforce before enabling write-back. Go to Setup > Object Manager > Account > Fields & Relationships > New to create each field.

How It Feeds Scoring

  • Account Health Score — Uses ARR, engagement signals, support burden, product usage, and NPS data from the account
  • Pipeline Hygiene — Evaluates opportunities for missing next steps, stale deals, close date pushes, and unidentified economic buyers
  • Renewal Risk — Uses contract end dates, support ticket severity, NPS trends, and engagement decay
  • ICP Fit — Scores accounts against your ideal customer profile using segment, industry, student count, budget, and other firmographic data
  • Lead Score — Combines fit signals (title, segment, enrollment) with engagement signals (email opens, content downloads, website visits, demo requests)

Common Salesforce CPQ Patterns

Many organizations using Salesforce CPQ or custom quoting workflows store deal values on custom Opportunity fields rather than the standard Amount field. PILLAR’s field mapping UI handles these patterns natively — you just map your CPQ-derived amount field to PILLAR’s canonical amount field during implementation.
If your team uses Salesforce CPQ or a custom quoting workflow, confirm which field holds the deal value before the PILLAR implementation kicks off. Mapping the wrong field will cause weighted pipeline, forecast, and ARR calculations to be incorrect across every dashboard.
Common variants we’ve seen in EdTech organizations:
PatternTypical Field API NameWhen You’ll See This
Standard AmountAmountMost Salesforce orgs without CPQ. PILLAR’s default mapping.
Selected Quote AmountAmount - Selected Quote / SBQQ__SelectedQuoteAmount__cSalesforce CPQ with multi-quote workflows. Opportunity.Amount is auto-synced from the active quote.
Proposal AmountProposal_Amount__c / Total_Proposal_Value__cOrgs with a proposal-approval step separate from the quote.
Quote Amount (Custom)Quote_Amount__c / Custom_Quote_Amount__cCustom-built quoting tools or migrations from legacy CPQ systems.
Annual Contract ValueAnnual_Contract_Value__c / ACV__cOrgs that want ACV (not TCV) to drive pipeline calculations.
Total Contract ValueTotal_Contract_Value__c / TCV__cOrgs with multi-year deals where the full contract value lives on Opp.

How to Decide Which Field to Map

Ask your Salesforce admin these three questions:
  1. “When a rep creates a quote with the standard CPQ flow, does Opportunity.Amount get updated automatically?” If yes, map Amount. If the team instead works off a custom field that drives pipeline reports, map that field.
  2. “Which field do your Salesforce pipeline reports pull for the ‘deal value’ column?” Whatever that field is, map it to PILLAR’s amount. This ensures PILLAR’s pipeline numbers match what your team sees in Salesforce.
  3. “Do your leadership dashboards show ACV or TCV?” Map the field that matches what your exec team reviews. PILLAR’s pipeline and forecast calculations will then speak the same language as your board reports.

Mapping in PILLAR

Once you know the correct field:
  1. Navigate to Settings → Integrations → Salesforce → Field Mapping
  2. Find the amount row under the Opportunity section
  3. Change the CRM Field dropdown from Amount to your CPQ field (e.g. SBQQ__SelectedQuoteAmount__c or Amount - Selected Quote)
  4. Click Save. The next sync will pull the correct values.
PILLAR also supports mapping different amount fields for different Opportunity record types if your org uses record types to distinguish New Business vs Renewal vs Expansion. Reach out to support@pillargtm.com if you need per-record-type amount mappings.

Email & Calendar

Email and calendar connectors provide activity-level engagement data that powers the engagement component of Account Health scoring and contact-level engagement scores.

What You’ll Need

  • A Google Workspace account (personal Gmail is not supported)
  • Each user must authorize individually — this is a per-user OAuth flow
PILLAR never reads email body content. Only metadata is captured: sender, recipient, timestamp, and subject line. This data is stored as activities linked to contacts and accounts.

Steps to Connect

  1. Navigate to Settings > Integrations > Email & Calendar.
  2. Click Connect Google Workspace.
  3. Each team member will see a prompt to authorize their individual Google account.
  4. After authorization, email metadata and calendar events begin syncing every 5 minutes.

What Syncs

Data TypeFields CapturedUsed For
Email metadataSender, recipient, timestamp, subject lineContact engagement scoring, activity tracking
Calendar eventsAttendees, time, durationMeeting activity signals, last-meeting-date on opportunities

How It Feeds Scoring

  • Account Health — Email and meeting frequency contribute to the engagement component. Accounts with declining email/meeting activity trigger engagement decay signals.
  • Contact Engagement Score — Individual contact engagement scores factor in email response rates and meeting attendance.
  • Pipeline Hygiene — The last_meeting_date field on opportunities is updated from calendar data, and deals without recent meetings are flagged.

Notifications & Collaboration

PILLAR can push signal alerts, daily digests, and play notifications to your team’s collaboration tools so CSMs and AEs see critical signals where they already work.

What You’ll Need

  • A Microsoft Teams workspace
  • Option A (Webhook — simple): An incoming webhook URL configured in your target Teams channel
  • Option B (Graph API — full): Microsoft 365 admin consent to allow PILLAR to post to channels via Graph API
Option A (incoming webhook) requires no OAuth and can be set up by any Teams channel owner in under 2 minutes. Option B (Graph API) requires an Azure AD admin to grant consent but unlocks a channel picker UI so users can route different alerts to different channels from within PILLAR.
  1. In Microsoft Teams, open the channel where you want PILLAR alerts.
  2. Click ··· next to the channel name > Connectors > Incoming Webhook > Configure.
  3. Name the webhook (e.g. “PILLAR Alerts”) and click Create.
  4. Copy the webhook URL.
  5. In PILLAR, navigate to Settings > Integrations > Notifications.
  6. Click Configure on the Microsoft Teams card and paste the webhook URL.
  7. Click Test to post a sample Adaptive Card, then Save.

Option B: Graph API (Full Integration)

  1. In PILLAR, navigate to Settings > Integrations > Notifications.
  2. Click Connect Microsoft Teams.
  3. You will be redirected to Microsoft’s OAuth consent screen. An Azure AD admin must accept the permissions (Channel.ReadBasic.All, ChannelMessage.Send, Team.ReadBasic.All).
  4. After consent, PILLAR lists all teams and channels your account has access to.
  5. Select the channels for each alert type: signal alerts, daily digest, and play notifications.
  6. Click Save.

What Gets Sent

Notification TypeTriggerCard Content
Signal AlertNew critical or high-severity signalAccount name, signal type, ARR at risk, recommended action, link to account
Daily Digest8 AM (configurable)Portfolio ARR, at-risk ARR, health score, critical signal count, top 3 actions
Play ActivationPlay triggered on an accountAccount name, play type, ARR protected, link to account
Renewal Risk AlertAccount crosses risk thresholdAccount name, risk score, renewal date, primary risk driver

Adaptive Cards

All Teams notifications use Microsoft Adaptive Cards (v1.4) — they render natively in Teams with structured data, color-coded severity indicators, and View in PILLAR deep-link buttons. No plain-text messages are sent.

Product Usage Tools

Product usage data feeds the adoption and utilization components of Account Health scoring. PILLAR ingests feature usage, session data, and user activity metrics.

What You’ll Need

  • Pendo API key (found in Pendo > Settings > Subscriptions > App Details)
  • The Pendo account ID field that maps to your CRM account identifier

Steps to Connect

  1. Navigate to Settings > Integrations > Product Usage.
  2. Click Connect on the Pendo card.
  3. Enter your Pendo API key.
  4. Map the Pendo account identifier to PILLAR’s account lookup field.
  5. Click Save & Test. PILLAR will validate the connection and begin the initial sync.

What Syncs

Data PointCadencePILLAR Field
Feature adoption countsEvery 60 minaccounts.product_usage_score
Active user countsEvery 60 minaccounts.active_users
Session frequencyEvery 60 minEngagement signals
Feature usage trendsEvery 60 minExpansion readiness scoring

Support Ticketing

Support ticket data feeds the support burden component of Renewal Risk scoring. Accounts with high ticket volume, escalations, or low CSAT are flagged as at-risk.

What You’ll Need

  • Intercom admin access to authorize the OAuth flow

Steps to Connect

  1. Navigate to Settings > Integrations > Support Ticketing.
  2. Click Connect on the Intercom card.
  3. You will be redirected to Intercom’s OAuth consent screen. Click Authorize.
  4. Map the Intercom company identifier to PILLAR’s account lookup field.
  5. Click Save & Test.

What Syncs

Data PointCadencePILLAR Field
Conversation count (per company)Every 30 minSupport burden scoring
Conversation state (open/closed)Every 30 minsupport_ticket_snapshots.status
SLA breach statusEvery 30 minEscalation signals
CSAT ratingsEvery 30 minsupport_ticket_snapshots.csat_score
Tags and categoriesEvery 30 minTicket type classification
If your support ticketing runs inside your CRM (HubSpot Service Hub or Salesforce Service Cloud), PILLAR ingests tickets directly through the CRM connector — no separate support ticketing connector is needed. The CRM connector syncs Cases (Salesforce) or Tickets (HubSpot) into the same support_ticket_snapshots table.

Customer Sentiment & NPS

NPS and customer sentiment data feed the Satisfaction component of Account Health scoring. Accounts with declining NPS or negative survey responses are flagged for proactive outreach.

What You’ll Need

  • Wootric account with OAuth access

Steps to Connect

  1. Navigate to Settings > Integrations > Customer Sentiment.
  2. Click Connect on the Wootric card.
  3. You will be redirected to Wootric’s OAuth consent screen. Authorize the connection.
  4. Map the Wootric account/end-user identifier to PILLAR’s account or contact lookup field.
  5. Click Save & Test.

What Syncs

Data PointCadencePILLAR Field
NPS score (per account)Every 60 minaccounts.nps_score
NPS survey responsesEvery 60 minSatisfaction scoring
Response trendsEvery 60 minNPS trend signals
How NPS feeds scoring: NPS scores from any connected sentiment tool flow into accounts.nps_score, which is a component of the Account Health Score’s Satisfaction dimension. Declining NPS triggers the nps_decline signal, which in turn can fire save plays or risk alerts. See the Account Health scoring rules for weight details.

Call Intelligence

Call intelligence data powers the Call Intelligence scoring category — 7 rules that evaluate conversation quality, rep performance, competitive mentions, and stakeholder engagement from recorded sales and CS calls.

What You’ll Need

  • Gong workspace with API access enabled
  • A Gong user with admin permissions to authorize the OAuth connection
  • Admin permissions in PILLAR to configure connectors
PILLAR uses Gong’s OAuth 2.0 authorization flow. No API keys or passwords are stored — only the OAuth refresh token. Your Gong admin may need to approve the PILLAR app in Gong’s API settings.

Gong Plan Requirements

Full call analytics (sentiment, talk ratio, trackers, topics) require Gong Business or Enterprise plan. Basic call tracking (title, participants, duration, direction) works on all Gong plans. If your Gong workspace is on a lower-tier plan, PILLAR will sync call metadata but the Call Intelligence scoring rules will return neutral scores for analytics-dependent fields until your Gong plan includes the analytics API endpoints.
Gong PlanWhat PILLAR Can Access
Essentials / ProCall list (title, participants, duration, direction, outcome). CI rules return neutral scores for missing analytics.
BusinessFull analytics: talk ratios, interactivity, topics, trackers, next steps, call outcomes. All 7 CI rules fire with real data.
EnterpriseEverything in Business, plus transcript access for future keyword analysis features.

Steps to Connect

  1. Navigate to Settings > Integrations > Call Intelligence.
  2. Click Connect on the Gong card.
  3. You will be redirected to Gong’s OAuth consent screen. Authorize the connection.
  4. PILLAR begins an initial sync of the last 90 days of call data.
  5. Ongoing syncs run every 4 hours automatically.

What Syncs

Data PointCadenceUsed For
Call metadata (title, direction, duration, outcome)Every 4 hoursCall frequency scoring (CI-006)
Participants (name, email, title, affiliation)Every 4 hoursExec participation detection (CI-005), account matching
Rep talk ratioEvery 4 hoursRep talk ratio scoring (CI-001)
Customer talk ratioEvery 4 hoursCustomer engagement scoring (CI-007)
Sentiment (overall, customer, rep)Every 4 hoursSentiment trend analysis (CI-002)
Topics discussedEvery 4 hoursConversation topic tracking
Trackers (competitor mentions, pricing, next steps)Every 4 hoursCompetitive mention detection (CI-003), next steps scoring (CI-004)
Interactivity scoreEvery 4 hoursEngagement quality

How PILLAR Matches Calls to Accounts

PILLAR automatically resolves which account a call belongs to by:
  1. Email domain matching — External participant email domains are matched against accounts.domain
  2. Contact email matching — If domain matching fails, individual participant emails are matched against contacts.email
Calls that cannot be matched to an account are stored but do not contribute to scoring until a match is established.

How It Feeds Scoring

The Call Intelligence category includes 7 scoring rules:
RuleWhat It Measures
CI-001: Rep Talk RatioIdeal reps talk 40-50% of the time. Over-talking (over 60%) or under-talking (under 30%) reduces the score.
CI-002: Customer Sentiment TrendAverage customer sentiment across the last 3 calls. Declining sentiment is an early churn signal.
CI-003: Competitive MentionsWhether competitors were discussed in recent calls. Frequent mentions indicate active evaluation risk.
CI-004: Next Steps CommitmentWhether next steps were explicitly mentioned on the most recent call. Calls without next steps indicate stalled momentum.
CI-005: Exec ParticipationWhether executive stakeholders (VP+, C-suite) have joined recent calls. Exec presence signals strategic buy-in.
CI-006: Call FrequencyWhether call volume is appropriate for the account’s deal stage and renewal proximity.
CI-007: Customer EngagementCustomer talk ratio in recent calls. Customers who talk more are more engaged; silent customers are at-risk.
When Gong is not connected, all 7 CI rules return a neutral score of 50 and are not counted as triggered. This means the Call Intelligence category does not drag down account health scores for organizations that do not use Gong.

CSV Import

For data that is not available through an API connector, PILLAR supports manual CSV upload. This is commonly used for:
  • Seat counts — Licensed seats vs. active seats per account (feeds utilization scoring)
  • Utilization metrics — Product usage percentages when no product analytics tool is connected
  • Financial data — P&L metrics for the Board Report (has its own dedicated upload at Settings > Financial Data)
  • Historical data — Backfilling account or contract data that predates your CRM

How to Upload

  1. Navigate to Settings > Integrations > CSV Import.
  2. Download the template CSV for the data type you want to import (Accounts, Contacts, Opportunities, Leads, or Contracts).
  3. Fill in the template with your data. Each row should include a matching identifier (account name, CRM ID, or email) so PILLAR can link records.
  4. Upload the completed CSV.
  5. PILLAR shows a preview of the mapped columns and any validation errors. Fix any issues and confirm the import.

CSV Template Columns

ColumnRequiredMaps To
account_name or crm_idYes (one of)Record matching key
arrNoaccounts.arr
segmentNoaccounts.segment
statusNoaccounts.status
student_countNoaccounts.student_count
licensed_seatsNoUtilization scoring
active_seatsNoUtilization scoring
nps_scoreNoaccounts.nps_score
Any column that matches a PILLAR field name from the Field Mapping Reference will be auto-mapped.
ColumnRequiredMaps To
account_name or crm_idYes (one of)Account lookup
contract_numberNocontracts.contract_number
start_dateYescontracts.start_date
end_dateYescontracts.end_date
contract_valueYescontracts.contract_value
statusNocontracts.status
auto_renewNocontracts.auto_renew
term_monthsNocontracts.term_months
CSV imports are additive by default — they update existing records or create new ones but never delete data. If you need to correct previously imported data, re-upload the CSV with the corrected values and the same matching identifiers.

Troubleshooting

OAuth tokens can expire if your CRM admin revokes access or if the token refresh fails. Navigate to Settings > Integrations, click the connector card, and click Reconnect. You will be prompted to re-authorize.
Check the Field Mapping screen on the connector card. Look for fields marked as “Unmapped” in the Required section. If PILLAR’s auto-discovery couldn’t match a field, you may need to create a manual mapping. See the Field Mapping Reference for the expected CRM field names.
Scores recalculate on every sync cycle (every 15 minutes for CRM data). If you just connected a new source, wait for at least one full sync cycle to complete. Check the connector card for “Last Synced” timestamp. If the sync completed but scores haven’t updated, check that the required fields for the relevant scoring rule are mapped.
This means PILLAR tried to fetch a field from your CRM that doesn’t exist in your org’s schema. This typically happens when a mapped field references a custom field that was deleted or renamed in your CRM. PILLAR’s Salesforce connector has fail-soft retry logic that automatically drops the invalid field and retries the query. Review your field mappings to remove or update the stale mapping.
Navigate to the Data Health dashboard (accessible from the main navigation). It shows coverage percentages for each data object, mapping coverage, picklist mapping warnings, and sync status across all connectors.