The Marketo source supports both Full Refresh and Incremental syncs. You can choose if this connector will copy only the new or updated data, or all rows in the tables and columns you set up for replication, every time a sync is run.
This connector is based on the Singer Marketo Tap.
This connector can be used to sync the following tables from Marketo:
activities_X where X is an activity type contains information about lead activities of the type X. For example, activities_send_email contains information about lead activities related to the activity type
send_email. See the Marketo docs for a detailed explanation of what each column means.
activity_types. Contains metadata about activity types. See the Marketo docs for a detailed explanation of columns.
campaigns. Contains info about your Marketo campaigns. Marketo docs.
leads. Contains info about your Marketo leads. Marketo docs.
lists. Contains info about your Marketo static lists. Marketo docs.
programs. Contins info about your Marketo programs. Marketo docs.
primitive arrays are converted into arrays of the types described in this table
Full Refresh Sync
Incremental - Append Sync
By default, Marketo caps all accounts to 50,000 API calls per day.
By default, this connector caps itself to 40,000 API calls per day. But you can also customize the maximum number of API calls this source connector makes per day to Marketo (which may be helpful if you have for example other applications which are also hitting the Marketo API). If this source connector reaches the maximum number you configured, it will not replicate any data until the next day.
If the 50,000 limit is too stringent, contact Marketo support for a quota increase.
(Optional) Whitelist Airbyte's IP address if needed
An API-only Marketo User Role
An Airbyte Marketo API-only user
A Marketo API Custom Service
Marketo Client ID & Client Secret
Marketo REST API Base URLs
Step 1: (Optional) whitelist Airbyte's IP address
If you don't have IP Restriction enabled in Marketo, skip this step.
If you have IP Restriction enabled in Marketo, you'll need to whitelist the IP address of the machine running your Airbyte instance. To obtain your IP address, run
curl ifconfig.io from the node running Airbyte. You might need to enlist an engineer to help with this. Copy the IP address returned and keep it on hand.
Once you have the IP address, whitelist it by following the Marketo documentation for allowlisting IP addresses for API based access.
Follow the Marketo documentation to create an API only user
Step 4: Create a Marketo API custom service
Make sure to follow the "Credentials for API Access" section in the Marketo docs to generate a Client ID and Client Secret. Once generated, copy those credentials and keep them handy for use in the Airbyte UI later.
Follow the Marketo documentation for obtaining your base URL. Specifically, copy your Endpoint and Identity URLs and keep them handy for use in the Airbyte UI.
We're almost there! Armed with your Endpoint & Identity URLs and your Client ID and Secret, head over to the Airbyte UI to setup Marketo as a source.