Tammy, this is done using a webhook. After the form is filled out, you use a Call Webhook flow step to request a new trial key. The webhook connects to your key server and gets a response: a unique and valid key. The key gets written back to a lead field, and then you send the email from Marketo. You definitely do not need/want to send emails from your app!

Thanks Sanford! I actually set up a webhook up for DiscoverOrg, so that's a great solution thanks! What I'm not too sure about now is the development part b/c DiscoverOrg came w/ promoting "webhook" integration w/ Marketo. If we're on the look out for a license manager- does that mean the license manager would have to have the webhook 'ability' to integrate w/ Marketo or would anything work and it is just a matter of code?

Yes, either the License Manager would have to be able to be called as a webhook (it wouldn't have to know anything about Marketo in particular as all webhooks use the same concept) or you could use an intermediate webhook to coordinate w/the LM.

"As a webhook" means it requires only a single outbound request to get a response. Compare this to a system that requires separate requests to get a some kind of access token, query for data, and then request a new code -- that won't work because webhooks only make one outbound call. If the system requires more of a multi-step process, you can put your own webhook-compatible layer in between, then that layer does the handshake + gets data and then passes it back to Marketo. Marketo doesn't know or care that there were other steps taken under the hood, as long as it only needs one callout.

Alternately, you can simply pre-create a list of, say, 1000 license keys. Save that to a file and have a custom webhook pop a new one off the stack whenever one is requested. In this way you aren't directly communicating with the license manager but are still dispensing valid keys.