Pardot
Salesforce Pardot (now branded Marketing Cloud Account Engagement) is a B2B marketing automation platform for lead nurturing, scoring, and pipeline acceleration.
This integration is currently in alpha. Configuration and behaviour may change.
Prerequisites
Complete these steps in Salesforce before configuring Signal.
Access your Salesforce org with Pardot enabled
Log in to Salesforce at your org URL (e.g. https://your-org.my.salesforce.com). Pardot is administered from within Salesforce since the v5 unified API.
Find your Business Unit ID
Navigate to Setup > Quick Find > Pardot Account Setup. Your Pardot Business Unit ID is shown on this page (format 0Uv...). Copy it.
Create a Connected App
Follow the same Connected App flow described in the Salesforce CDP prerequisites:
- Setup > App Manager > New Connected App.
- Enable OAuth settings.
- Add scopes:
pardot_api— required for Pardot v5 API access.api— general API access.refresh_token.
- Enable Client Credentials Flow if available; otherwise use Authorization Code with a refresh token.
- Copy the Consumer Key (Client ID) and Consumer Secret.
Find your Salesforce login domain
Production: login.salesforce.com. Sandbox: test.salesforce.com. Signal uses this for OAuth token exchange.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
business_unit_id | string | Yes | Your Pardot Business Unit ID (starts 0Uv). |
client_id | string | Yes | Connected App Consumer Key. |
client_secret | secret | Yes | Connected App Consumer Secret. |
salesforce_login_domain | select | Yes | login.salesforce.com (production) or test.salesforce.com (sandbox). |
Signal Setup
Quick Setup
- Navigate to Integrations in the sidebar.
- Open the Integration Library tab.
- Find Pardot under the Marketing Automation category.
- Click Install, and fill in the required fields.
- Click Install Integration.
API Setup
curl -X POST http://localhost:8084/v1/admin/integration-catalog/pardot/install \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Pardot",
"variant": "default",
"config": {
"business_unit_id": "0Uvxxxxxxxxxxxxxxx",
"client_id": "3MVG9...",
"client_secret": "xxxxxxxxxxxxxxxxxxxx",
"salesforce_login_domain": "login.salesforce.com"
},
"delivery_mode": "server_side"
}'Event Mapping
| Datafly Event | Pardot Concept | Notes |
|---|---|---|
page | Custom prospect activity | Sent to the prospect’s activity history. |
Product Viewed | Custom prospect activity | Forwarded with product properties. |
Order Completed | Custom prospect activity with score | Mapped to a scoring-eligible activity. |
identify | Prospect create/update | Email and traits update the prospect via Pardot v5 API. |
Identity
| Field | Source | Notes |
|---|---|---|
email | traits.email | Pardot’s primary prospect key. |
firstName / lastName | traits.first_name / traits.last_name | Standard prospect fields. |
company | traits.company | The prospect’s company. |
crm_lead_fid | (Salesforce CRM) | If a matched CRM lead exists, Pardot links automatically. |
Consent
Pardot events should be sent under the marketing consent category. Pardot maintains its own opt-in fields and works alongside Salesforce CRM’s consent records — Signal forwards CMP consent state so workflows can sync opted_out appropriately.
Verify it’s working
- Trigger a test event from your website.
- In Salesforce, navigate to Account Engagement > Prospects and look up the test prospect by email.
- Click the prospect and check the Activity tab for Signal-delivered custom activities.
- In Signal, check Live Events to confirm delivery with a
200response status.
Troubleshooting
| Symptom | Possible Cause | Resolution |
|---|---|---|
401 invalid_grant | Wrong login domain | Use test.salesforce.com for sandbox orgs, login.salesforce.com for production. |
403 Forbidden | Missing pardot_api scope | Edit the Connected App and add the pardot_api scope. |
| Custom activity API errors | Activity type not registered | Pre-create the custom activity type in Pardot Settings > Custom Activities. |
| Prospect not created | Missing email | Pardot’s primary key is email — every identify event must include one. |
Visit Pardot (Account Engagement) v5 API documentation for full reference.
See also
- Marketo — alternative B2B marketing automation
- HubSpot — CRM alternative
- Salesforce CDP — Data Cloud