ActiveCampaign Forum

Get Contacts Created/Modified in the last day


#1

I’m building a program for a client that will run every day that will sync contacts with my client’s external systems. I’m looking for a way to get a list of contacts that have been created or modified in ActiveCampaign (including modifications to custom fields) within the last day so that I can update the data on the other systems. There are about 20,000 contacts and over 60 custom fields.

Is there a way to get all contacts in a list where the created or modified date is greater than another date? The documentation for API 3 doesn’t say much about filtering. it doesn’t look like I can use greater than operators. Am I wrong?

I don’t see where the dates are described in the documentation. I assume cdate and udate are the created and updated dates? What are adate and edate for?

I’d rather not get all 20 thousand contacts and filter myself. I thought that maybe I could order by the dates in descending order and hopefully all the modifications would be in the first page, but when I try “api/3/contacts?orders[udate]=DESC”, it does not appear to have any affect. The contacts don’t appear to be ordered at all. Am I doing something wrong?

Right now it’s looking like I’ll need to get all the contacts. That’ll be 2000 requests with a max page size of 100. Then get all the custom field values for each one to check the dates. So another 20,000 requests. That’s going to take a lot of time and a lot of wasted bandwidth. Surely there’s a better way?


#2

You could create a custom field called “Last Modified” for example, and then use Zapier to create a zap where the trigger is “Updated Contact” and the output would be to update the Last Modified date with today’s date. Then if you wanted to see the contacts that were modified yesterday, you would simply use the AC filters to view contacts where Last Modified equals yesterday’s date