Marketo Output Tool
The Marketo Output tool makes a call to the Marketo REST API endpoint: Create/Update Leads. Data is output to Marketo based on the action you select in the configuration.
This tool is not automatically installed with
URL: The Marketo REST Instance to retrieve records from. This information is found in Marketo (Admin > Integration > Web Services > REST API).
Client ID: Client ID for the API Role user. This information can be found in Marketo (Admin > Integration > LaunchPoint).
Client Secret: Client Secret for the API Role user. This information can be found in Marketo (Admin > Integration > LaunchPoint).
More information about setting up the web service and user roles for accessing the Marketo REST API can be found on the Marketo REST Documentation site.
Key Field: This drop-down will show the list of fields that you have used as input for the tool. Marketo will use this field to find any duplicate records. If no field is specified, then email will be used by default.
If the field ‘id’ is included in your records, ‘id’ must be selected as the key field.
Select an Output Action.
- Create or Update (default): Based on the key field, create a lead if the lead does not exist, update the lead if it does exist.
- Create Duplicate: Create another lead even if it already exists.
- Update Only: Update the lead if it already exists, do nothing if it does not.
- Create Only: Create a new lead if it does not exist, if it does exist, skip it.
Partition Name: If the Marketo Instance being accessed has partitions set up, they will be listed in the drop-down. This field selection is required if the instance being written out to has lead partitions set up. If there are no partitions available, ‘Default’ will be used.
A summary status of the records submitted will be listed as a message in the results window.
Based on the records you submitted, 3 records were skipped, 2 records were created.
Error messaging such as authentication failures, etc. will be displayed in the configuration window. Error messaging such as missing configuration selections will be shown over the tool in the workflow.
The tool sends records in batches of 300 records or less, each batch counts as a separate API call towards the daily limit set by Marketo.
The Marketo REST API limits accounts to 10,000 requests per day, requests to the REST API do not count towards the SOAP API daily limitations.
You want to make sure to maintain Marketo field structures in Alteryx, before writing back to Marketo to avoid errors. The Marketo connector will convert the data to the proper datatypes before outputting to Marketo as long as the field names are valid. If the field names are not found in Marketo, the output will fail.
All dates in Marketo are stored with a UTC offset. This format is comprised of the local time with an appended offset that can be positive or negative. For example, a datetime value in Marketo might look like this, with the date inserted into Marketo is from a timezone that is 6 hours earlier than UTC time (Mountain Daylight Time):
Reading data from Marketo
To make it easier for Alteryx Artisans to work with these datetime values, Alteryx will convert the datetime value read from Marketo to a machine local datetime value. This allows Artisans to work with the datetime values in their local times. For example, the datetime value above would look like this in an Alteryx workflow or app, assuming you are also 6 hours earlier than UTC time:
Or, if you were only 4 hours earlier than UTC, it would be returned to you like this:
Writing date to Marketo
When datetime values are written back into Marketo using either an insert or update operation, Alteryx will convert the value(s) back to the format that Marketo expects. This is done by calculating the local machine UTC offset and appending that to the end of the datetime value. Alteryx will put a 'T' between the date and time portions of the datetime value as shown in the examples above.
Using the examples above, if a datetime value was written from a timezone with an offset of -6:00, like this:
And then later written back to Marketo (unmodified), from a computer with a UTC offset of -4:00 hours, it would be written back into Marketo like this:
Both times are identical and represent the same moment in time.