Hey, friend! This is April Deibert and Sam Schwarz with the Marketo Team, a part of the Digital Marketing Solutions Practice here at Perficient. Over the past year, we’ve worked on some cool client projects where we used our Marketo REST API skills creatively. We thought you might appreciate learning more. If any of these projects sound like something you would also like help on, reach out! Details below.
What is Marketo’s REST API?
Marketo’s official documentation explains it like this:
“Marketo exposes a REST API which allows for remote execution of many of the system’s capabilities. From creating programs to bulk lead import, there are a large number of options which allow fine-grained control of a Marketo instance.
These APIs generally fall into two broad categories: Lead Database, and Asset. Lead Database APIs allow for retrieval of, and interaction with Marketo person records and associated object types such as Opportunities and Companies. Asset APIs allow interaction with marketing collateral and workflow-related records.”
In summary, using Marketo’s REST API is a way to pull a clean list of all assets within a Marketo instance, including Channels, Email Templates, Forms, Programs, and more.
The Marketo REST API Program Controller to obtain the endpoint references for a list of Programs. (Source: Marketo Developer Documentation)
Examples of Cool Things We Did with Marketo’s REST API
Example 1: Merging of Workspaces
Two different clients asked us to help do a complete clean-up and simplification of their Marketo workspaces and partitions. One client is in the Construction industry, while the other is in the Professional Security industry.
The Construction industry client needed Perficient’s help to go from 8 regionally labeled workspaces to 3 regionally labeled workspaces, and the Professional Security industry client needed to go from 18 regionally labeled workspaces to 3 regionally labeled workspaces. This request is common, as distinct workspaces and people partitions help global businesses maintain strict asset and data access levels. However, as organizations change, it may become more reasonable to combine workspaces or partitions – allowing for improved instance ease of use and cost savings.
So, we went to work using Marketo’s REST API to pull a list of all the different assets by workspace. With that information, we could clearly show the client the effort required to complete the project and make recommendations for what needed to be migrated to a different workspace, archived, or deleted.
Once the client approved our recommendations, we were able to migrate, archive, or delete some items easily. However, other assets would not migrate – leading to troubleshooting. For example, we found that some program members needed to be manually removed from campaigns and re-added once the campaign was migrated. In another case, contacting Marketo Support was required to refresh the backend and jump-start the process.
Throughout each step, we kept our client apprised of our percentage of tasks completed using custom pivot table reporting that tracked along with each asset.
Of note, one use case was for B2B (Business-to-Business) audiences, and the other was for B2C (Business-to-Consumer) audiences. This demonstrates that the Marketo REST API solution can be applied to any industry or audience.
Example 2: Migration to a “Newketo”
A different Construction industry client (who is B2B and B2C) asked us to help them strategize and prepare for migration from one Marketo instance to a new Marketo instance. We love to call this moving from “Oldketo” to “Newketo.”
This Marketo-to-Marketo migration is required when a client is setting up a new CRM or migrating to a different CRM, such as when migrating from Microsoft Dynamics 365 to Salesforce. To map correctly, a new Marketo instance must be integrated with the new CRM instance — creating the perfect time to clean the instance and streamline processes.
To do this, the client asked Perficient to pull a list of all assets in their current Marketo instance using Marketo REST API and work with them to decide what to migrate, archive, or delete. This also was the perfect time to review naming conventions. Perficient assisted with naming convention standardization, so reporting within the Revenue Cycle Explorer would be a breeze.
Example 3: Global Form Strategy
A B2B Healthcare industry client asked for Perficient’s assistance in exporting a list of all forms and their corresponding information so that we could work on an improved global form strategy.
The resulting Marketo REST API form export included whether the forms were set up to do progressive profiling or not or if they had custom themes and styling information.
A global form strategy helps create consistency in data gathering for scoring, sales, and reporting. The process also facilitates consistency for consent compliance and an effortless way to update many forms at once if branding guidelines change.
Sample JSON response when querying programs by name using Marketo’s REST API. (Source: Marketo Developer Documentation)
Here are some of the definitions of the data this code pulls when using the GET endpoint for Programs. (Source: Marketo Developer Documentation)
Then Perficient helps to simplify the data for analysis. (Source: Perficient Templates)
Tips to Be Successful
- If you are planning for a workspace clean-up or migration, coordinate your staff in advance to set a date for them to hold on building anything new within the old workspaces. Sometimes, we have found that a team will continue to build within these workspaces after we have pulled the asset list and sought approval for migration, archiving, or deletion. These new assets created in the meantime complicate the process, as they might be actively in use, and migration would prove difficult.
- Also, set aside a work block on your calendar to review the list of recommended assets to migrate, archive, or delete. Before we can proceed, these items will need your approval and possibly additional staff approval.
- For those using Postman to retrieve the Marketo REST API information, ensure you have the correct Marketo Munchkin code referenced, or you will get an error. This issue is common when reusing scripts from a previous API pull.
- The daily limit for a Marketo REST API export is 500MB. This volume may seem like a lot, but depending on the size of the instance, you can hit this quickly. Schedule accordingly based on workload.
Let Perficient Help You!
As you can see in the client examples above, the Marketo REST API capability can be used for B2B or B2C across any industry. This is a simple and effective way to improve your team’s efficiency and effectiveness as you grow your business. Contact us today to see how we can best assist you!