Setup the Marketo API
Marketo is a marketing automation platform that enables marketers to engage with their leads, prospects, and customers across multiple channels. Insent’s Integration with Marketo allows Marketo customers to identify and resolve website visitors through their Marketo cookie. It helps you to alert the right members of your team as soon as a high-profile client is identified on your website.
Benefits of the Insent-Marketo Integration
- Insent’s conversational marketing platform helps capture visitor intent through conversational chat as well as embedded forms on your website.
- Setup granular audience rules through Marketo’s static and smart lists to target visitors who arrive on your website.
- Marketo is enriched with visitor data Insent fields after field mapping.
- Insent pushes the chat history of leads back to Marketo to preserve the context of all lead conversations through Insent.
In this article, we will discuss how you can set up the Marketo API, this is the first article in a five-part series to get started with Marketo.
- Setup the Marketo API
- Integrate Insent with Marketo
- Create Leads in Marketo
- Target visitors based on Marketo lists
- Push Insent Chat Log to Marketo
To set up your Marketo with Insent, you would first need to create a Marketo API that allows Insent to connect to your Marketo account. Creating a Marketo API that can is a three-step process that we discuss in this article.
What you will need to set up in Marketo?
- Create an API Role in Marketo
- Create a User within the API Role
- Create a Service that accepts API calls through the User.
What you will need to integrate with Insent
- Client ID & Secrets for the API connection
- Instance URL for the API connection
Step 1: Create an API Role in Marketo
Note: You can skip the API Role creation step if you have a role with API access and Admin access setup.
Log into Marketo and Navigate to the ‘Admin’ section in the top-right navigation bar.
Click on the ‘Users & Roles’ option and navigate to the ‘Roles’ tab.
Click on the ‘Create New Role’ option, and a popup will appear. Enter a name and a description for your new role. Enable the ‘ACCESS API’ and ‘Access Admin’ permissions.
Now a new Role with the API access and Admin access permissions is created.
Step 2: Create a User with the API Role
Note: You can skip the User creation step if you already have a user created for the API Role.
1. We will now create a user for the Role. Navigate to the ‘Users’ tab under ‘Users & Roles’
2. Click on the ‘Invite New User’ button.
3. This action will open a pop-up screen where you provide the new user’s contact information, assign them with the right permissions, and send them an invitation email from Marketo.
Note: The email invite is skipped for API Users. However, we recommend giving a valid email address in the Info tab if Marketo sends system messages to this email address.
If you are new to Marketo, we recommend the following configuration to distinguish the user created for API access:
1. First Name: Insent
2. Last Name: API User
3. Email Address: Insentsync@yourcompany.com
4. Choose the ‘Insent API Role (all workspaces)’ in the Roles and Workspaces option.
5. Check the ‘API Only’ check box.
6. Click ‘Send’ to finish creating a new User.
If you cannot give us the ‘Access Admin’ and ‘Access API’ permissions for business reasons, we have a specific subset of permissions that you can use permissions in the Appendix section to set up the Marketo API connection.
Step 3: Create a LaunchPoint Service
1. Creating a LaunchPoint Service in Marketo enables it to accept API calls from Insent.
Note: You can skip this step if you already have a LaunchPoint service for REST API in Marketo.
2. Locate Integrations in the sidebar and select the ‘LaunchPoint’ option.
3. Click the ‘New button’ and pick the ‘New Service’ option.
4. Name the service, and select the ‘Custom’ service type.
5. Enter the display name, Service (Custom), Description, and choose the API-only User you created.
6. Click ‘Create’ to successfully create the LaunchPoint Service
In case you are new to Marketo, we recommend the following configuration for the LaunchPoint service:
- Display Name: Insent Rest Service
- Service: Custom
- Description: Provides OAuth credentials for integrating with Insent
- API only User: Insentsync@yourcompany.com
You have successfully created a Service to accept API requests from Insent. You will now need to retrieve the Client Id, Client Secret and the Instance Id for integrating with Marketo in the Insent dashboard.
Step 4: Retrieve Client URL and Client Secret from Marketo
- Navigate to Admin -> Integrations | LaunchPoint tab.
- Click on the ‘View Details’ hyperlink on the grid for the LaunchPoint API service (‘Insent Rest Service’ if you went with the default name) you set up in the previous step.
- You can now view a pop-up with ‘Client Id’ and ‘Client Secret’. Please make a note of the Client ID & Client Secret.
Step 5: Retrieve Instance URL
- Navigate to Admin → Integration | Web Services
- In the REST API section, Find the REST API Endpoint.
- You will find the Instance URL in the REST API section. A sample instance URL will resemble the following: https://650-KCG-111.mktorest.com/
650-KCG-111 here is a sample instance ID. Your Instance ID will be of a similar format.
Please enter the Instance URL in the 'Base URL' section during the Marketo Authentication process in Insent with the following format ( https://650-KCG-111.mktorest.com/)
List of exact permissions required for the Integration
In the Access Admin section, we need:
- Access Marketo Custom Activity Object
- Access Marketo Custom Object
In the Access API section, we need:
- Read-Write Activity
- Read-Write Activity Metadata
- Read-Write Assets
- Read-Write Company
- Read-Write Custom Object
- Read-Write Custom Object Type
- Read-Write Named Account
- Read-Write Named Account List
- Read-Write Opportunity
- Read-Write Person
- Read-Write Redirect Rules
- Read-Write Sales Person
- Read-Write Schema Custom Field
- Read-Write Schema Standard Field