We know that our customers often have lots of contact and lead information in other platforms and Marketo is a hugely popular tool to manage records. You can connect Drift to Marketo to pull in your contacts for the purposes of targeting and also send new lead information into Marketo!
Billing Plan: The Marketo integration is available on the Drift Premium, Advanced and Enterprise plans.
In this doc, we'll cover
Please note that it may take up to 24 hours before the Marketo Program appears for use after following the steps below.
Note:
The Marketo integration does not support the use of Marketo partitions.
System Requirements:
- A Marketo User with Admin Rights
To set up the integration, you need three pieces of information from your Marketo account:
- Munchkin Account ID
- Client ID
- Client Secret
We'll go over how to find each of these. First, login to your Marketo account here.
Find your Munchkin Account ID
- Click Admin in the top right of the screen
- Click Munchkin on the sidebar
- Find the Munchkin Account ID in the Tracking Code box

Finding the Client ID and Client Secret
For accessing both your Client ID and Client Secret, you’ll first have to create a new User who is assigned a custom Role with the correct API access permissions in Marketo. First, click Admin in the top right of the screen, same as you did for finding the Munchkin Account ID.
Second, click Users & Roles on the sidebar.

Third, click the Roles tab and then create a new role by clicking New Role.

Fourth, in Permissions, click on ”+” to expand Access API and check the boxes for full Read-Write Activity, Read-Write Activity Metadata, Read-Write Assets, and Read-Write Person. (Suggested Role Name: Drift Role, Suggested Description: API Access)

Finally, click Create and you should now see your new User Role listed. You can double click to edit this at any time. For now, there are still no Users assigned this Role.

Since you just created a custom role, you now need to create an API-Only User to assign the role to. To do so:
First, click the Users tab.

Invite a New User by clicking the Invite New User button.

Enter information for your new user.
For example
Email: api.user@drift.com (( Use a relevant email to your organization. This is just an example of how we would do it. )
First Name: API
Last Name: User
Reason: Drift User
Access Expires: Never

On the Step 2: Permissions step, assign an API-Only User to the New Role.
Check the box for API Only. Then hit Next.

Click Send, which you should be able to because an Invitation won't be required for API only access.

After successfully doing so, the User that you just invited should appear at the bottom of your Users list. Now we just have one more step before being able to find the Client ID and Client Secret!
Finding Client ID and Client Secret
Click LaunchPoint from the sidebar. If you're unfamiliar with how Launchpoint works, then refer to Marketo's description here.

Create a new Service using the toolbar dropdown labeled New:
Enter Display Name: Drift Integration.

Select Custom for the Service, and for API Only User, select the new API-only user that you just created and assigned the new custom role to. Our suggested description is "Service to allow Drift access".
After clicking Create to complete adding the new Service, the Drift Integration should again be listed at the bottom of the table list. Finally, you can click View Details to find both your Client ID and Client Secret.


Once you have your Munchkin Account ID, Client ID, and Client Secret, head to Settings > App Settings > Integrations > Marketo, or, click here.

Click the blue Connect button, and input your Munchkin Account ID, Client ID, and Client Secret in the three text fields provided:

Click the Connect Marketo V2 button and look for a the green Connected text. Once you're successfully connected, the app should look like this:

Disconnecting your Marketo Integration
If you choose to Disconnect the Marketo Integration, you'll see the pop-up below to confirm that you would like to disconnect. Don't worry about keeping mapped attributes and users, as long as you reconnect with the same account, we will preserve those settings.

1. Ensure the permissions for read-write activity metadata have been enabled
2. Create activities using the following documentation (The API name is important):
3. Make sure to map these in your drift org: (Settings -> Marketo -> Sync settings)

4. Run a test chat - this approves the activities in Marketo
5. Check the constraints in your Smart list section
6. Use these constraints to customize your smartlist!
Things to Note:
For the Name fields, the integration will look for values in the First Name and Last Name Contact attributes first. If they're empty, it will look to the full 'Name' field and parse the first and last name values from there. If the full Name field is used by the integration, the first string in the name will be set to the First Name field and the remaining strings will be set to the Last Name field. So "Jon Scott McDougal" would be mapped to your integration as First Name: "Jon" and Last Name: "Scott McDougal". Email enrichment can populate all three name fields, but will not overwrite any existing value.