We are using a form (hand-coded by developers) to capture email information from people who wish to download some collateral. These email addresses are stored in our custom CMS, which I then export in CSV format and upload into Marketo.
Instead of replacing these forms at the moment (that would require more development time and money due to some fancy things that the form does), I was thinking I might be able to create a webhook or use the SOAP API to automatically pull that information out of our CMS. Does anyone know if this is possible? Does any step-by-step documentation exist?
A webhook? Not really. A webhook is an outbound call from Marketo that you can use as a flow step. But there would have to be something to trigger that flow step. Webhooks are used to massage or enhance Marketo lead data, or to post lead data to an external service (event signup, SMS, SFDC, etc.).
You don't actually need to replace the form but simply augment it to also send the same data to Marketo. This is the easiest thing to implement IMO as everything else will require server-to-server API work -- more moving parts, fragile, rate-limited.
The basic pattern is: submit the form to your CMS, capture the data that was submitted, wrap that data into a hidden Marketo form, submit the Marketo form. This all happens on the same page that hosts your current form. You'll need a competent JS developer.