Resources
Data Source Type: | REST/URL |
Format of URL Endpoint: | https://{subdomain}.mktorest.com/rest To query json data, use the following query syntax: https://{subdomain}.mktorest/com/rest/v1/lead/1.json Replace {subdomain} with your subdomain name. |
API Documentation: | Quick Start Guide for Marketo REST API List of available endpoints List of error codes |
API Limits | 10,000 API calls per day per Client ID. For example, if pulling back multiple pages, each page is considered a separate call. 100 calls per 20 second window. 1 MB per API call. 300 records per page. |
Important notes |
|
The Klipfolio-Marketo integration currently relies on the ability to pull Static Lists into Klipfolio. By using this method, you can leverage Marketo’s rich list of fields associated with lead records to create dashboards.
Defining your approach
Due to limitations with Marketo’s API, you will only be able to pull in static lists that contain less than 30,000 leads. However, for most organizations, this still allows you to create real-time, monitoring dashboards. Here are some suggested approaches:
- Leads created today
- Leads created past 7 days
- Leads created past 30 days
- Leads created by a campaign
- Leads by a specific revenue stage (eg: leads with an opportunity)
For larger lists, consider using Klipfolio’s Salesforce integration.
Currently, Klipfolio is not able to connect to Marketo email marketing data.
Step-by-Step
Creating a Marketo Data Source
To create a Marketo data source, you will need to complete the following steps:
- Set up Klipfolio as a LaunchPoint Service (you will only need to do this once).
- Create static lists in Marketo to report on.
- Create a data source in Klipfolio.
- Modify the API request to retrieve additional fields.
1. Set up Klipfolio as a LaunchPoint Service
You will only need to complete this task once in order to create your LaunchPoint Client ID and LaunchPoint Client Secret. These two values are required each time you create a Marketo data source in Klipfolio.
1. In Marketo, go to Admin tool. | |
2. Click the LaunchPoint icon. | |
3. Click the New Service option. | |
4. Fill out the options:
|
|
This will create a Launchpoint Client ID and Client Secret. | |
You will need to refer to the ID and Secret each time you create a new Marketo data source in Klipfolio. |
2. Create static lists in Marketo
Static Lists are containers within Marketo that ‘house’ leads that have been assigned to that list. Unlike Smart Lists, Static Lists are not dynamic. Therefore, you will need to set up a program that controls when leads are added and removed from a Static List.
From an organizational perspective, it’s easier to create separate folders and programs to house lists categorically. For this example, we will use a program to house all lists that segment leads that were created today. Similarly, you could look at leads from different time periods or from a specific program.
3. Create a data source in Klipfolio
To create a data source in Klipfolio, you will complete the following steps:
- Find your Launch Point Client ID & LaunchPoint Client Secret
- Find your REST API Identity URL & REST API Endpoint URL
- Find the unique ID for your Static List
- Submit the query in Klipfolio Dashboard
Finding your Launch Point Client ID & LaunchPoint Client Secret
Finding your REST API Identity URL and REST API Endpoint URL
Finding the unique ID for your Static List
Submitting the query in Klipfolio
- Open Klipfolio.
- Click Data Sources in the left navigation bar.
If you don’t see the above option, go to the bottom of the left navigation sidebar and click your Account Name > Data Sources instead.
- Click Create a new Data Source.
- Select Marketo from the list of services.
- Enter the appropriate values in the text fields provided.
- For the REST Request URL, modify the URL so it appears similar to the following example:
https://614-OQV-361.mktorest.com/rest/v1/list/1234/leads.json. Note: It’s important to modify the query to include the version information (v1/list), as well as to specify the unique ID of the list, the type of asset being called, and the format to return the data (1234/leads.json).
- Add the appropriate fields to your query. For example,
https://614-OQV-361.mktorest.com/rest/v1/list/2269/leads.json?fields=firstname,lastname,email,leadScore
- Click Get data.
- The request should return results within 60 seconds. By default, the list will return the following fields:
- ID
- updatedAT
- lastName
- createdAt
- firstName
You can modify these fields by following the instructions in step 4.
- Ensure this is the data you’re looking for. If you’re using Klips, optionally select the checkbox to Model your data. If you’re using PowerMetrics, which requires modelled data sources, you’ll automatically enter the modeller after clicking Continue. Learn more about modelling data sources.
- Click Continue.
- Name, choose refresh settings, and, optionally, share your data source.
- Click Save.
4. Modifying the query in Klipfolio
By modifying the request URL, you can retrieve additional information about lead records in your query. For instance, you may wish to retrieve data points such as Lead Source, Lead Score, Lifecycle Status, and other custom fields.
This section will detail how to set up the Request URL to accept additional fields, and how to determine what fields are available to your organization via the Marketo API.
Setting the Request URL to accept additional fields
- After the text .json, add the following text:
?fields=
This parameter will allow you to enter additional fields into the query.
Determining which fields are available to your organization
Each organization has its own list of unique Marketo fields associated with lead records. Here’s how to retrieve that list and to add those fields to your URL request.
- Navigate to the Admin section of Marketo.
- Select the Field Management option from the navigation menu.
- Click the Export Field Names option in the Fields menu. You will download an Excel file with a list of all fields available.
- Select values from the 1st column to modify your Request URL.
- To build a custom Request URL, append fields to the URL in the following format: ?fields=leadSource,leadScore,email,inferredCountry
- Submit the query.