I'm trying to understand the best way to integrate my company's list of active users to Marketo for things like product announcements, updates, PR, deals, etc.
Currently, all of that data lives in Mixpanel and is manually exported and uploaded into Mailchimp(!) by the education team and sent out that way.
Ideally, I would like to connect our user data base to Marketo so that when a user is deactivated (they are no longer a customer) that person is removed automatically from Marketo or at least marketing suspended.
It seems like I would need my company's platform engineering devs to create a webhook to connect our platform to Marketo. There was also talk to integrate with Segment to pipe the customer data that way.
What are others doing to sync their customer base into Marketo? Is there something very obvious that I am missing? Have others solved for this problem at their company?
Any and all thoughts on this matter are appreciated.
Segment is a good choice, with their v2 connector. Other ETLs as well. Webhooks are useful to trigger behaviours from one system into another or to request from updates, but are not intended for volume upserts.
It seems like I would need my company's platform engineering devs to create a webhook to connect our platform to Marketo.
If you mean a triggered connection from your database to the Marketo API best to not refer to that as a "webhook." That is, unless your platform already has an outbound webhook architecture built and you're simply plugging a new webhook definition into that (if so, you'd still need an intermediate webhook-to-REST-API gateway, since a true stateless webhook can't communicate directly with the Marketo API).
If your platform currently doesn't support outbound connections at all in response to events like customer deactivation, then it wouldn't be the right move to implement webhooks from scratch. You'd only have to (see above) create an additional gateway adapter for your own technology, which is wasted effort unless you need webhook support for some other purpose.
Instead, if you were building trigger technology from scratch, you'd build it to support the RESTful sequence: OAuth authorization request → token cache → data request. (It's the fact there are 3 steps that makes a true webhook unworkable, as a webhook means a single stateless connection to an outside service, with no "memory" of the event.)
With the above in mind, if your developers are building trigger tech from scratch, there's really no reason to send triggered data via the Segment API. Unless you have thousands upon thousands of deactivations per day, they should just push them to Marketo using the Marketo Push Lead API endpoint. It's one less network hop and data mapping step to worry about.