I want to get all lead activities for all leads, and keep this up to date.
I don't see an easy way to do this, because the getLeadActivity call seems to only return lead activities for a particular lead, and getLeadChanges seems to return lead activities only for a static set of leads.
Instead, I am thinking the best approach is using the following pseudo code:
One time catch up:
all_leads = getMultipleLeads(no criteria)
for activity in getLeadChanges(leadSelector->keyValues=all_leads)