Marketo: Import Audiences & Activity Data
Import leads and activity data from Marketo for use in Lytics audiences.
Integration Details
- Implementation Type: Server-side
- Implementation Technique: REST API and File Based Transfer
- Frequency: Batch daily or one time only.
- Resulting data: User profiles and User fields.
This integration utilizes Marketo's REST API to import user data. Once the import is started the job will:
- Create a Lead Import Job via Marketo's
/bulk/v1/leads/export/create.json
endpoint. - If email and web activity are configured in the import, it will create separate jobs for each.
- Check the status of the job(s) periodically via the
/bulk/v1/leads/export/{exportId}/status.json
endpoint. - When a job's status is returned as "Completed", retrieve the data via the
/bulk/v1/leads/export/{exportId}/file.json
endpoint and import the data into the appropriate stream.
Fields
The following fields are included in the default mapping of the mo_user
stream:
Source Field | Lytics User Field | Description | Type |
---|---|---|---|
facebookId | fbuid unique id | Facebook Id | string |
email unique id | string | ||
id | mo_user_id unique id | Marketo: User Id | string |
address | address | Address | string |
billingCity | billing_city | Billing City | string |
billingCountry | billing_country | Billing Country | string |
billingPostalCode | billing_postal_code | Billing Postal Code | string |
billingState | billing_state | Billing State | string |
billingStreet | billing_street | Billing Street | string |
dateOfBirth | birthdate | Birthdate | date |
city | city | City | string |
numberOfEmployees | company_employees | Company Employees | int |
industry | company_industry | Company Industry | string |
company | company_name | Company Name | string |
annualRevenue | company_revenue | Company Annual Revenue | number |
sicCode | company_sic | Company SIC Code | string |
website | company_url | Company URL | string |
country | country | Country | string |
department | department | Department in Company | string |
doNotCall | do_not_call | Do Not Call Status | string |
doNotCallReason | do_not_call_reason | Do Not Call Reason | string |
emaildomain | Email Domain | string | |
fax | fax | Fax Number | string |
facebookDisplayName | fb_name | Facebook Name | string |
facebookProfileURL | fb_photo | Facebook Profile Photo | string |
firstName | first_name | First Name | string |
title | job_title | Job Title | string |
lastName | last_name | Last Name | string |
linkedInId | li_id | LinkedIn Id | string |
linkedInDisplayName | li_name | LinkedIn Name | string |
linkedInPhotoURL | li_photo | LinkedIn Photo | string |
anonymousIP | mo_anonymous_ip | Marketo: Anonymous IP | []string |
createdAt | mo_created_at | Marketo: Created Date | date |
leadRevenueCycleModelId | mo_cycle_model | Marketo: Cycle Model | string |
leadScore | mo_lead_score | Marketo: Lead Score | string |
leadSource | mo_lead_source | Marketo: Lead Source | string |
leadStatus | mo_lead_status | Marketo: Lead Status | string |
leadPartitionId | mo_partition_id | Marketo: Partition ID | string |
priority | mo_priority | Marketo: Priority | string |
acquisitionProgramId | mo_program_id | Marketo: Program Id | string |
originalReferrer | mo_referrer | Marketo: Referrer | string |
relativeScore | mo_relative_score | Marketo: Relative Score | string |
sfdcType | mo_sfdc_type | Marketo: SFDC Type | string |
leadRevenueStageId | mo_stage_id | Marketo: Stage Id | string |
updatedAt | mo_updated_at | Marketo: Updated Date | date |
urgency | mo_urgency | Marketo: Urgency | string |
mobilePhone | mobile_phone | Mobile Phone Number | string |
phone | phone | Phone Number | string |
postalCode | postal_code | Zip | string |
salutation | salutation | Salutation | string |
state | state | State | string |
twitterDisplayName | tw_name | Twitter Name | string |
twitterPhotoURL | tw_photo | Twitter Photo | string |
twitterId | twuser_id | Twitter Id | string |
The following fields are included in the default mapping of the mo_activity
stream:
Source Field | Lytics User Field | Description | Type |
---|---|---|---|
leadId | mo_user_id unique id | Marketo: User Id | string |
channels | All Channels Used | []string | |
activityDate | created_ts | Global: First Active | date |
activityDate | email_firstbounced_ts | Marketo: First Time Email Bounced | date |
activityDate | email_firstclick_ts | Email: First Time Email Clicked | date |
activityDate | email_firstdelivered_ts | Marketo: First Time Email Delivered | date |
activityDate | email_firstopen_ts | Email: First Time Email Opened | date |
activityDate | email_firstsent_ts | Marketo: First Time Email Sent | date |
activityDate | email_firstsoftbounce_ts | Marketo: First Time Email Bounced (soft) | date |
activityDate | email_firstunsub_ts | Marketo: First Time Email Unsubscribed | date |
activityDate | email_lastbounced_ts | Marketo: Last Time Email Bounced | date |
activityDate | email_lastclick_ts | Email: Last Time Email Clicked | date |
activityDate | email_lastdelivered_ts | Marketo: Last Time Email Delivered | date |
activityDate | email_lastopen_ts | Email: Last Time Email Opened | date |
activityDate | email_lastsent_ts | Marketo: Last Time Email Sent | date |
activityDate | email_lastsoftbounce_ts | Marketo: Last Time Email Bounced (soft) | date |
activityDate | email_lastunsub_ts | Marketo: Last Time Email Unsubscribed | date |
activityDate | hourly | Global: Hourly Events | map[string]intsum |
activityDate | hourofweek | Global: Hour of Week Events | map[string]intsum |
activityDate | last_active_ts | Last Active on Any Channel | date |
last_channel_activities | Last Activity By Channel | map[string]time | |
activityDate | mo_created_ts | Marketo: First Active | date |
primaryAttributeValue | mo_email_bounced | Marketo: Emails Bounced | []string |
activityTypeId | mo_email_bounced_count | Marketo: Count of Email Bounced | int |
activityTypeId | mo_email_click_count | Marketo: Count of Emails Clicked | int |
primaryAttributeValue | mo_email_clicked | Marketo: Emails Clicked | []string |
primaryAttributeValue | mo_email_delivered | Marketo: Emails Delivered | []string |
activityTypeId | mo_email_delivered_count | Marketo: Count of Emails Delivered | int |
primaryAttributeValue | mo_email_opened | Marketo: Emails Opened | []string |
activityTypeId | mo_email_opened_count | Marketo: Count of Emails Opened | int |
primaryAttributeValue | mo_email_sent | Marketo: Emails Sent | []string |
activityTypeId | mo_email_sent_count | Marketo: Count of Emails Sent | int |
activityTypeId | mo_email_soft_bounce_count | Marketo: Count of Email Bounced (soft) | int |
primaryAttributeValue | mo_email_soft_bounced | Marketo: Emails Bounced (soft) | []string |
primaryAttributeValue | mo_email_unsub | Marketo: Emails Unsubscribed | []string |
activityTypeId | mo_email_unsub_count | Marketo: Count of Unsubscribes | int |
activityDate | mo_first_web_click_ts | Marketo: First Time Clicked Web | date |
activityDate | mo_first_web_submit_ts | Marketo: First Time of Web Form Submit | date |
activityDate | mo_first_web_visit_ts | Marketo: First Time Visited Web | date |
activityDate | mo_firstclick_ts | Marketo: First Time Email Clicked | date |
activityDate | mo_firstopen_ts | Marketo: First Time Email Opened | date |
activityDate | mo_last_active_ts | Marketo: Last Active | date |
activityDate | mo_last_web_click_ts | Marketo: Last Time Clicked Web | date |
activityDate | mo_last_web_submit_ts | Marketo: Last Time of Web Form Submit | date |
activityDate | mo_last_web_visit_ts | Marketo: Last Time Visited Web | date |
activityDate | mo_lastclick_ts | Marketo: Last Time Email Clicked | date |
activityDate | mo_lastopen_ts | Marketo: Last Time Email Opened | date |
primaryAttributeValue | mo_web_click | Marketo: Web Pages Clicked | []string |
activityTypeId | mo_web_click_count | Marketo: Count of Web Clicks | int |
primaryAttributeValue | mo_web_form_submit | Marketo: Web Forms Submitted | []string |
activityTypeId | mo_web_form_submit_count | Marketo: Count of Web Form Submit | int |
primaryAttributeValue | mo_web_visit | Marketo: Web Pages Visited | []string |
activityTypeId | mo_web_visit_count | Marketo: Count of Web Visits | int |
activityDate | yymm | Global: Events By Year/Month | map[string]intsum |
Configuration
Follow these steps to set up an import leads and activities job for Marketo. If you are new to creating jobs in Lytics, see the Jobs Dashboard documentation for more information.
- Select Marketo from the list of providers.
- Select the Import Audiences & Activity Data from the list.
- Select the Authorization you would like to use or create a new one.
- Enter a Label to identify this job you are creating in Lytics.
- (Optional) Enter a Description for further context on your job.
- (Optional) Toggle Show Advanced Options.
- Select Keep Updated to continuously import leads and activity from Marketo.
- Select the Activity Types to configure the acticity types to import.
- Select the Partition IDs to Import to configure Marketo partition IDs to import by adding them to the left column. If no partition IDs are selected, data from all partitions will be imported.
- Enter the Import Fields with Prefix to import all user fields that start with this value. NOTE: This will be in addition to all the default user fields and is a case-sensitive value.
- Enter the Maximum Number of Calls to make to Marketo per day. By default, accounts have 10,000 calls available per day so Lytics sets this at 9,500. For more information see Marketo Integration Best Practices.
- Click Start Import.
Import Limitations
File Size
Lytics uses the Marketo Bulk API, which allows an import of activity and leads data via large CSV files. However, Marketo restricts the amount of data Lytics can import daily. The default value of this limit is 500 MB per day.
For example, if your Marketo account generates a 700 MB file while importing leads and activities, the first 500 MB will be imported the first day and the remaining 200 MB will be imported when the daily limit resets on the following day.
If daily updates are critical for your use cases, spikes in activity volume may affect how timely Lytics can import data. In such scenarios, you can increase the daily limits for your Marketo account by contacting your Marketo customer success manager.
Filter Field
When data is imported from Marketo, it is queried with one of the fields:
createdAt
: Only new leads will be received. Leads with updated fields will be ignored.updatedAt
: Each time the import runs it will receive leads based on the time they were updated.
NOTE: Importing based on updateAt
is preferred so that any new changes are received. However, updatedAt
is not available as a filtering field for all Marketo accounts. If createdAt
is the only filter field available, this means that any updates made to existing leads will not be reflected in Lytics. See Marketo's documentation regarding Bulk Lead Extract Filters and contact their support to discuss gaining access to the updateAt
filter.