TL;DR: Connect HubSpot, Salesforce, Pipedrive, or Microsoft Dynamics in under 5 minutes via OAuth. Two-way sync pulls contacts for enrichment and pushes verified emails, phones, and company data back to your CRM automatically.
CRM Integrations
Cleanlist.ai integrates with popular CRM platforms via Unified API (opens in a new tab), providing consistent sync behavior across all supported CRMs.
Supported CRMs
HubSpot
- Auto-sync contacts: Pull contacts from HubSpot for enrichment
- Two-way sync: Push enriched emails, phones, and company data back
- Field mapping: Map Cleanlist.ai fields to HubSpot properties (auto-configured defaults)
- Automatic enrichment: Enrich new contacts as they sync
Setup: Portal → Integrations → Connect HubSpot → Authorize via OAuth
Salesforce
- Lead and contact sync: Sync leads, contacts, and campaign members
- Custom field mapping: Map to standard or custom Salesforce fields
- Sandbox support: Test in Salesforce sandbox before production
- Automatic updates: Push enriched data back to Salesforce records
Setup: Portal → Integrations → Connect Salesforce → Authorize via OAuth
Pipedrive
- Contact sync: Import Pipedrive contacts for enrichment
- Field mapping: Map to Pipedrive person and organization fields
- Enriched data push: Sync enriched contact data back to Pipedrive
Setup: Portal → Integrations → Connect Pipedrive → Authorize via OAuth
Microsoft Dynamics
- Contact and lead sync: Import from Dynamics 365 for enrichment
- Field mapping: Map to standard and custom Dynamics fields
- Enriched data push: Sync enriched data back to Dynamics records
Setup: Portal → Integrations → Connect Dynamics → Authorize via OAuth
How Integrations Work
1. Connect Your CRM

- Navigate to Integrations in the Cleanlist.ai portal
- Click Connect on your CRM
- Authorize Cleanlist.ai via OAuth (no passwords stored)
- Configure field mappings
2. Configure Sync Settings
Sync Direction:
- Import only (CRM → Cleanlist.ai): Pull contacts for enrichment
- Two-way sync: Import contacts and push enriched data back
- Manual sync: Trigger syncs on demand
- Automatic sync: Scheduled sync intervals
Field Mapping:
- Standard fields auto-mapped (name, email, company, phone)
- Custom field mapping for CRM-specific fields
- Default values for unmapped fields
- Conflict resolution settings
3. Enrich & Sync Back
- Synced contacts appear in a Cleanlist.ai lead list
- Enrich with email, phone, or both
- Enriched data automatically pushes back to your CRM
- Sync logs track all operations
Integration Features
Smart Sync
- Incremental syncs: Only sync new or changed records
- Conflict resolution: Handle records changed in both systems
- Error handling: Automatic retry for failed syncs
- Sync logs: Detailed activity logs in the portal
Webhook Support
- New contact created in CRM → Auto-enrich in Cleanlist.ai
- Contact updated → Re-enrich with latest data
- Contact added to campaign → Enrich and sync
API Access
For custom integrations beyond supported CRMs, use the Cleanlist.ai API directly.
Security
- OAuth 2.0 authentication — no passwords stored
- Revokable access — disconnect anytime from the portal
- Encrypted transmission — TLS for all data in transit
- Audit logs — full activity history
Troubleshooting
Sync Not Working
- Check sync is enabled (not paused) in portal
- Verify CRM credentials haven't expired — reconnect if needed
- Check field mappings for type mismatches
- Review sync logs for specific error messages
Duplicate Records
- Configure duplicate detection rules in sync settings
- Use email as unique identifier for deduplication
- Run deduplication in CRM before initial sync
Rate Limits
- CRM APIs have their own rate limits
- Cleanlist.ai automatically throttles to stay within limits
- Large imports are batched automatically