This function requests an insert or update (upsert) operation for multiple lead records. When updating an existing lead, the lead can be identified with one of the following keys:

If more than one key is present the Marketo ID takes precedence over ForeignSysPersonId, and the latter will be updated. However, if Email is also present as a key, it will not be updated unless it is specified in the list of attributes.

Our recommendation is that batch sizes are no higher than 300. Higher sizes are not supported and may result in timeouts and in extreme cases being throttled.

You are able to turn off the de-duplication feature with this function call. If dedupEnabled is set to true and no other unique identifier is given (foreignSysPersonId or Marketo lead ID), then the lead record will be de-duplicated using the email address. Keep in mind, passing in false will create duplicates within Marketo.


Field Name



leadRecordList->leadRecord Required Array of LeadRecords that you want to sync. LeadRecords must specify the lead id, email or ForeignSysPersonId
dedupEnabled optional Optional value with which you can turn off de-duplication feature. Passing in a value of false will create duplicates in Marketo

Request XML

Response XML

Sample Code – PHP

Sample Code – Java

Sample Code – Ruby