Skip to content
EXCITING NEWS!

Hustle has new owners — our employees!

Read about it here

Integrations

Hustle connects to Salesforce, NGP VAN and EveryAction (Bonterra), Blackbaud Luminate Online, Blackbaud TeamRaiser, and PDI, and offers a public API for everything else.

Each integration does the same two jobs. It adds from your CRM the people you want to contact to Hustle and updates the CRM with your Hustle activity (messages sent, messages received, opt outs applied, and other recorded conversational data). Your CRM stays the source of truth and nobody re-enters data by hand.

Last updated September 2026.

How do Hustle integrations work?

Every integration runs in two directions. On the way in, you pick a list, campaign, group, or event in your CRM and Hustle imports those contacts into a group, mapping the fields you choose. On the way back, Hustle records activity from P2P Texting, Broadcast Texting, the Dialer, and Automations onto the matching CRM record as it happens. Opt-outs sync too, so a supporter who stops texts in Hustle is marked that way in your CRM.

Organizations that run more than one system can connect them side by side. A single goal in Hustle keeps Salesforce, VAN, Luminate Online, and PDI all updated at once.

Hustle integrations at a glance

IntegrationBrings into HustleWrites backStays current
SalesforceLeads and Contacts from a Campaign or a ReportTexts, calls, Hustle tags, goal updates, and opt-outs as Tasks and Hustle objectsNightly auto-sync for Campaigns, including removals. Re-import for Reports
NGP VAN and EveryActionSaved lists from My Campaign or My VotersSurvey responses, activist codes, call results, contact history, event sign-ups, and opt-outsRe-import a list any time. Daily opt-out and opt-in sync
Blackbaud Luminate OnlineConstituent groupsOpt-outs, texts, and calls as interactions on the constituent recordNightly auto-sync, including removals, or refresh on demand
Blackbaud TeamRaiserRegistered participants of an eventOpt-outs, texts, and calls as interactions on the constituent recordNightly auto-sync or refresh on demand
PDILists sent from PDIMessage sent, message received, and opt-out flags, plus survey responses from Hustle tagsSend an updated list from PDI
Public APIAny system, by pushing contacts into Hustle groupsConsent and message status events to your own systemsReal time

Does Hustle integrate with Salesforce?

Yes. Hustle for Salesforce is a managed package on the Salesforce AppExchange. It imports Leads and Contacts from a Campaign or a Report into a Hustle group, then writes every Hustle text, call, tag, goal update, and opt-out back onto the same Salesforce record. Setup happens inside Salesforce’s own Setup Assistant and takes one connection per Hustle organization, to a production org or a sandbox.

What comes into Hustle from Salesforce

Import from a Salesforce Campaign (up to 100,000 members) or a Report (up to 2,000 rows). Every import carries the person’s first and last name, email, mobile number (falling back to the Phone field), postal code, and Salesforce ID, so replies always land on the right record. Anything else is up to your field mapping. Map a standard or custom field once in the Setup Assistant and it comes across on every import from that object.

What goes back to Salesforce

Texts sent, replies received, and calls made through the Dialer appear on the record’s Activity timeline as standard Salesforce Tasks. Hustle tags and goal status changes are written to two Hustle objects, Lead Tag and Lead Action, which your team can report on like any other Salesforce data. If someone opts out of texts in Hustle, the opt-out field on their record is updated right away.

Keeping Salesforce groups current

Turn on auto-sync for a Hustle group linked to a Salesforce Campaign and Hustle checks overnight for new members. It also deactivates people who are no longer members of the Campaign in Salesforce, so they stop receiving new messages from that Hustle group. Hustle groups linked to a Salesforce Report refresh on demand. Re-run the import against the same report and Hustle pulls the latest rows without creating duplicates.

Coming soon

A Hustle Custom Action for Salesforce Marketing Cloud journeys is in development. It will let a journey trigger Hustle texting as a step, so outreach starts from inside Salesforce.

Setup guide: How do I use Salesforce with Hustle?

Does Hustle integrate with NGP VAN and EveryAction?

Yes. Hustle connects to VAN My Campaign platforms, including VoteBuilder and EveryAction 8, and to VAN My Voters, all from Bonterra. Import any saved list into a Hustle group, text and call those people, and the results (survey answers, activist codes, call outcomes, delivered texts, opt-outs) are recorded in VAN automatically.

What comes into Hustle from VAN

Pick a saved list in VAN My Campaign or My Voters, a turf cut, a target universe, a donor list, anything you have already built in VAN. Start the import from VAN’s SMS export tool or via CSV import in Hustle. The CSV route is there because VAN’s SMS export does not include every field, a limitation on VAN’s side. Match VAN’s columns, including your committee’s custom fields, to Hustle fields, choose which phone numbers to bring in (cell, home, work), and land the list in the Hustle group and tags you want. Hustle keeps the VAN ID with each person so results match back to the right record.

What goes back to VAN

When a supporter answers a survey question over text, or an agent logs one, Hustle writes it to VAN as a canvass response. Tag someone in Hustle and the matching activist code is applied to their VAN record. Every Dialer call posts its result (answered, no answer, voicemail, disconnected, call back) as a canvass response, and a delivered text is logged as a contact attempt so your canvassing history stays complete. RSVPs to an event goal can create the matching sign-up on the VAN event and shift. Turn on daily syncing and text opt-outs and opt-ins recorded in either system are reflected in both.

Good to know

Link as many committees as you manage, each with its own API key from VAN. Hustle makes it easy to add a My Campaign or My Voters integration from an existing integration. Re-importing a list is the normal way to refresh it with newer VAN data. People already in Hustle are recognized by VAN ID rather than duplicated.

Setup guide: How do I use the VAN and EveryAction integration?

Does Hustle integrate with Blackbaud Luminate Online?

Yes. Connect your Luminate Online (BBLO) instance to Hustle and any constituent group becomes a texting and calling audience. Opt-outs, texts, and calls are written back to the matching constituent record automatically.

What comes into Hustle from Luminate Online

Choose any constituent group in your Luminate instance and Hustle imports every member into a matching Hustle group, with name, email, phone numbers, and the custom fields you map. Turn on daily auto-sync and Hustle re-checks the Luminate group each night, adding new constituents to the Hustle group and deactivating anyone who has left the Luminate group, so they stop receiving new messages from that Hustle group. Or refresh the Hustle group on demand whenever you need the latest membership.

What goes back to Luminate Online

When a constituent opts out of texts in Hustle, the opt-out is flagged on their record in a custom field you choose, so your compliance record lives in one place. Texts sent and received and calls logged in Hustle are recorded as interactions on the constituent record, using the interaction types you set up.

Good to know

Your segmentation stays in Luminate Online. Build the constituent group there, whether lapsed donors, monthly sustainers, or last year’s event attendees, and Hustle keeps texting the current membership as it changes each night. Everything your texters and callers do lands on the constituent record as interactions, using interaction types you define, so gift officers and stewardship staff see texts and calls in the same history as emails and gifts. Opt-outs live in a Luminate field you choose, which keeps your consent record in the system your fundraising team already audits. One Luminate Online instance connects per Hustle organization.

Setup guide: How do I use the Luminate Online and TeamRaiser integrations?

Does Hustle integrate with Blackbaud TeamRaiser?

Yes. Hustle imports the participants registered for a specific TeamRaiser peer-to-peer fundraising event, so you can text them reminders, fundraising coaching, day-of logistics, and thank-yous. Everything that happens in those conversations is written back to the participant’s constituent record in Luminate Online.

What comes into Hustle from TeamRaiser

Pick a TeamRaiser event and Hustle pulls in its registered participants, with the event ID and participant status attached, into a Hustle group. Map any TeamRaiser participant field to a Hustle custom field so your texters see the details that matter, such as team name or amount raised. Turn on daily auto-sync and new registrants are added each night as sign-ups come in, or refresh the Hustle group on demand before a big push.

What goes back from TeamRaiser conversations

A participant who opts out of texts is flagged on their constituent record in a custom field you choose. Texts and calls are logged as interactions on the record, using the interaction types you set up, so your event team sees the full history in one place.

Good to know

Event fundraising runs on a clock, and this integration is built for it. Registrations keep flowing into the Hustle group right up to event day, so the reminder you send on Friday reaches the person who signed up on Thursday. Participant fields such as team name and amount raised come along as Hustle custom fields, which lets your texters nudge a captain differently from a first-time walker. Afterward, every text and call sits on the participant’s constituent record in Luminate Online, so the thank-you and the next ask start from a complete history. TeamRaiser and Luminate Online share one set of API credentials, so an organization that uses both connects once.

Setup guide: How do I use the Luminate Online and TeamRaiser integrations?

Does Hustle integrate with PDI?

Yes. Hustle connects directly to your PDI account. Send a list from PDI, choose where it lands in Hustle, and start texting. Every message, reply, opt-out, and canvassing result is recorded on the voter’s PDI record as it happens.

What comes into Hustle from PDI

Your PDI team builds and saves a list the way they always do, then sends it to Hustle. That hands you a one-time link that opens the import screen in Hustle, already signed in. Choose the Hustle tags and Hustle group the contacts should land in, and Hustle fetches the file from PDI and imports each voter’s PDI ID, first and last name, mobile number, and ZIP code when PDI has a valid one on file. There is no CSV to download or upload.

What goes back to PDI

Every outbound text logs a timestamped flag on the voter’s PDI record, and every inbound reply logs its own, so PDI shows the conversation happened in both directions. An opt-out is recorded on the record right away. Connect a Hustle tag to a PDI survey question once, and whenever your team applies that tag the matching answer is written to the voter’s PDI survey response. Flags post back for both texting conversations and Dialer calls.

Good to know

Your voter file stays in PDI and your texting program feeds it. Because every sent message, reply, and opt-out lands on the voter record as a PDI flag, the rest of the campaign can use texting results the same way they use door and phone results, to cut the next universe, build a walk list, or exclude people who have already been reached. Survey answers collected over text arrive as PDI survey responses, so a supporter ID from a Hustle conversation counts alongside one from a canvass. Setup on the PDI side is handled for you. Hustle creates the flags and the “Hustle SMS” contact-method entry PDI needs, and your PDI credentials are stored encrypted. Each Hustle organization connects to one PDI instance.

Setup guide: How do I use the PDI integration?

Does Hustle have a public API?

Yes. The Hustle Public API is a REST API with a published OpenAPI specification, so you can generate a client in the language you already use. Authentication uses the OAuth2 client credentials flow. Access is available to Hustle customers on request through [email protected].

What you can do with the API

Push contacts from any system into Hustle groups in real time, creating or updating a person by phone number along with their name, email, postal code, custom fields, and tags. Create and manage Hustle groups, tags, integrations, custom fields, and agents who send messages. Register webhooks to receive consent events (opt-ins and opt-outs) and message status events at your own endpoint the moment they occur.

Coming soon

Sending messages programmatically through the Public API is in development. Your own systems will be able to trigger a Hustle text directly, so a donation, a signup, or a CRM update can start a conversation without anyone logging into Hustle.

Good to know

The API is for the systems this page does not name. If your organization runs on a homegrown database, a CRM Hustle does not connect to yet, a donation platform, or an event registration tool, the API lets it feed contacts into Hustle and get consent and delivery data back, so texting fits into the workflow you already have rather than sitting beside it. It comes with a published specification your developers can generate a client from, and Hustle support is available while they build. The full reference, including request and response samples, is at api.hustle.com.

Common questions about Hustle integrations

Which CRMs does Hustle integrate with?

Hustle integrates with Salesforce, NGP VAN and EveryAction (Bonterra), Blackbaud Luminate Online, Blackbaud TeamRaiser, and PDI. For any other system, the Hustle Public API and webhooks let you push contacts in and receive consent and delivery events out.

Do opt-outs sync back to my CRM?

Yes, for every integration. When a person opts out of texts in Hustle, the opt-out is written to their record in Salesforce, VAN, Luminate Online, TeamRaiser, or PDI. VAN also supports daily two-way syncing, so an opt-out or opt-in recorded in VAN is reflected in Hustle.

Do I have to export a CSV and upload it?

No. Each integration pulls contacts directly from your CRM into a Hustle group. You choose the campaign, list, group, or event and the fields to map, and Hustle handles the transfer. VAN is the one exception where a CSV import is sometimes useful, because VAN’s SMS export does not include every field. If you need fields it leaves out, export the list from VAN as a CSV and import it in Hustle, and the VAN ID still carries over so results sync back.

Can I connect more than one CRM?

Yes. Organizations can connect Salesforce, VAN, Luminate Online, TeamRaiser, and PDI side by side, and a single Hustle goal keeps each connected system updated. Salesforce, Luminate Online, TeamRaiser, and PDI allow one instance per Hustle organization. VAN allows as many committees as you manage.

Where does synced activity show up in my CRM?

In Salesforce, texts and calls appear as Tasks on the record’s Activity timeline, and tags and goal changes are stored in the Lead Tag and Lead Action objects. In VAN, activity appears as canvass responses, activist codes, and contact history. In Luminate Online and TeamRaiser, texts and calls are logged as interactions on the constituent record. In PDI, each message and opt-out is a timestamped flag on the voter record.

Does Hustle work with Dialer calls as well as texts?

Yes. Call outcomes from the Hustle Dialer are written back alongside texting activity in Salesforce, VAN, Luminate Online, TeamRaiser, and PDI.

Who sets up an integration?

An organization admin in Hustle, working with an admin in your CRM who can issue API credentials or install the Salesforce package. Setup is a one-time step. Hustle’s client success team walks new customers through it.

Do I need a developer to use Hustle integrations?

No. The Salesforce, VAN, Luminate Online, TeamRaiser, and PDI integrations are configured in Hustle’s settings and your CRM’s admin tools. A developer is only needed if you want to build something custom with the Public API.

See your CRM connected to Hustle

Bring a list from your CRM to the demo and we will show you the round trip, from import to the first synced reply.

Request a demo

Ready to Hustle?

Have questions? We have answers. Schedule a demo to learn more.