We have some custom campaign reporting outside Marketo which uses Marketo Activity data and customer in the report are tracked on a custom Identifier, i.e. Customer ID.
The Customer ID is mapped as a custom field under Lead DB in Marketo. Customer ID with Lead ID is one to one.
From lead activities - email open, email click e.g, we only get lead ID and some additional activity related data back from Marketo Get Lead Activities API.
Now we want to actually get back Customer ID alongwith Lead ID with each activity, this is to allow custom reporting to work on Customer ID level.
Is it possible to capture additional lead attributes from activities? In our case it's Customer ID we want to be pulled back and we don't have whether it's doable directly via existing Marketo API.
Any help here would be appreciated.
I know one workaround which needs some back-end ETL, i.e. Using Get Leads by Filter API and specifying fields we want to pull. But this is not very ideal.
AFAIK, No. The only way to get lead specific data is to use the Leads endpoint. When you use the activities endpoint, you'll only be able to query activity centric data. Your workaround may be the best way.
Not sure if there was any relation, but if your Customer ID is formulated from the Lead ID. For example, if Customer ID = Lead ID + 002917, perhaps you can generate your Customer ID in your code from the Lead ID.
I agree with Jim.
Also, why don't you already have an xref table between the two IDs, if you're maintaining the custom field?
Looks like we have to live with an external Lookup table that will manage Lead ID and Customer ID association and then do reporting on top of it.
In our internal DB model, this customer ID is always one-to-one with Lead ID and we will need to sync both sides, i.e. Marketo and Internal DB model.
I believe this is the most feasible option we can take into consideration in absence of "Standard Activity data can't provide additional/custom attributes".
Please do share if you have any thoughts/opinions on this.