I’d like to pull customers that have freshly opted in to either text or email. I’m able to watch for new customers, but what if an older customer who hadn’t opted in before opts in? Is there an opted in date field I’m not seeing? Or an endpoint that expressly monitors these events so I can pull from that instead?
We currently don’t have an opt-in for text. The only thing on the customer object that has to do with the customer opting in or out is
email_unsubscribed. That indicates whether the customer has unsubscribed from marketing campaign emails. A value of
true means that the customer chose to opt out of email marketing from the current Square seller or from all Square sellers. This value is read-only from the Customers API.
If you’d like to listen for updates on this you can use webhooks to monitor for any changes to the value. Otherwise there isn’t a query that filters on the value.
OK, so then there’s only a way to collect New Customers and check if they have the segment of Email Subscriber, and that email_unsubscribed is false. This means that any old customers cannot be added to my external mailing list because the customers api says that Updates doesn’t check segment_ids. Is this correct?
Why wouldn’t old customer be able to be added you can call ListCustomer to get all customers associated to the account and check the status.
Churning through 19,000 customers every week to see if any of them changed their status is not going to work for me–that will be too much of a load
You can listen to customer.updated webhook events to see if there’s any change to the customer profile.
Yeah, I asked about that above – I was asking if it checked updates for changes to segment_ids since the API says it doesn’t check for that