Marketo

Marketo is a cloud lead management and marketing solution.

Data integration: Skyvia supports importing data to and from Marketo, exporting Marketo data to CSV files, replicating Marketo data to relational databases, and synchronizing Marketo data with other cloud apps and relational databases.

Backup: Skyvia Backup supports Marketo backup.

Query: Skyvia Query supports Marketo.

Establishing Connection

To create a connection with Marketo, you need to specify the domain to connect to, Client ID, and Client Secret.

Getting Credentials

Client ID

A GUID value, representing Marketo API client id.

Client Secret

Marketo API Client Secret. To configure access to Marketo and get the client ID and Client Secret for the connection, check this instruction in Marketo documentation.

Domain

The address of your Marketo subdomain.

Creating Connection

To connect to Marketo, specify the Client ID, Client Secret, and Domain.

Connection Editor window

Additional Connection Parameter

Use Bulk Extract

This parameter determines whether to use Marketo Bulk Extract to read Marketo Leads, Activities, and custom objects. If you select this checkbox, the mentioned objects’ querying will use fewer API calls but may take more time. Select this checkbox only if you need to read many Marketo records and spend fewer API calls. Read Bulk Extract Specifics to know more.

Metadata Cache

Specify the period after which Metadata Cache is expired.

Connector Specifics

Bulk Extract Specifics

Marketo provides interfaces for retrieval of large sets of data, called Bulk Extract.

Skyvia supports Bulk Extract for the Leads, Activities objects, and for custom objects.

Due to Marketo Bulk Extract API limits, Skyvia can read data by 31 days intervals. Thus, when you query data for more than 31 days, Skyvia reads data in chunks. Each chunk includes data for 31 days.

When you enable Use Bulk Extract and query Leads, Activities or custom objects without filters, Skyvia reads all the records created since the account creation date until UTC Time Now and divides data into 31-day chunks. It takes 60 seconds minimum to read a single chunk.

For example, you created your Marketo account three years ago, and you used the query SELECT * From Leads. Skyvia will read 36 chunks of data, spending 60 seconds minimum on each chunk, which results in 36 minutes or more to perform a single query.

To increase query performance and save API calls, narrow the selected time interval and minimize a number of chunks by using filters.

We strongly recommend using the following filters when querying Leads,Activities, and custom objects when Bulk Extract is enabled:

Object Field Operator
Leads Updated At >, >=, <, <=
Activities ActivityDate, Created At >, >=, <, <=
Custom objects Updated At >, >=, <, <=

When to use Bulk Extract

It is better to enable the Use Bulk Extract parameter in the following cases:

  • When Leads or Activities object contains many records and the API limits don’t allow you to query all records at once.
  • When querying custom objects.
  • When using queries with date filters and the selected time interval is not very long.
  • When using Incremental Replication.

It is better to disable the Use Bulk Extract parameter in the following cases:

  • When the Leads or Activities object contains a huge number of records, and the API limits allow you to query all records at once without filters.
  • When Leads or Activities object contains not many records.

Object Peculiarities

Leads, Activities and Custom Objects

Marketo API doesn’t allow filtering queried leads, activities, and custom objects data based on the Updated At or Created At fields. Thus, whenever a Synchronization or Incremental Replication runs, Skyvia queries all the records from these objects into the cache and applies a filter to this cache. It takes a lot of API calls and time if you have many records in these objects. However, the Bulk Extract interface supports native filtering by date fields for these objects. Thus we recommend enabling the Use Bulk Extract connection parameter in the Connection Editor to save API calls for Leads, Activities, and custom objects in Synchronization or Incremental Replication integrations.

Querying Specifics

Marketo API supports querying data from certain objects only by their identifying fields.

To get data from the Companies, Opportunities, OpportunityRoles, and SalesPersons objects, use filter by the identifying fields.

To get data from the custom objects use filter by the identifying fields or enable the Bulk Extract to get all the data without filters.

Incremental Replication and Synchronization

Objects having Created At or Updated At fields support Synchronization and Replication with Incremental Updates. Synchronization requires both fields to be present in an object. Incremental Replication requires at least one of the fields to be present in an object.

Supported Actions

Skyvia supports all the common actions for Marketo.