Request lead uploads a document within MKTO form

Anonymous
Not applicable

Request lead uploads a document within MKTO form

Hi all, wanting to build a web form/LP that facilitates a 'Redeem your prize' eg. customers need to register their details and upload proof of purchase to receive their prize. Can MKTO do this? where would the files go? (they would be scans or images if they took a pic with their phone of their invoice etc.)
any advice welcomed!
Tags (1)
2 REPLIES 2
Anonymous
Not applicable

Re: Request lead uploads a document within MKTO form

Kyleen,

This currently isn't supported. However, please vote on the idea to help push it into future roadmaps: https://community.marketo.com/MarketoIdeaDetail?id=08750000000IzEmAAK
SanfordWhiteman
Level 10 - Community Moderator

Re: Request lead uploads a document within MKTO form

@Kyleen P You're really asking two questions in one:
  1. Can you upload binary files such as pictures to Marketo in a form post?
  2. Can you display such files within the Marketo user interface, if they are browser-compatible formats?
The answer to 1. is actually "Yes."  You can use the JS FileReader API in conjunction with Forms 2.0 to upload a data: stream to Marketo and store it on the contact. (FileReader is supported on IE 10+ and all contemporary versions of FF/Chrome/Safari -- you could do something hacky for old versions of IE if they must be supported.)  This means the image data is indeed in Marketo.

The answer to 2. is unfortunately "No." While you can store the data in Marketo, the web app doesn't know it's a picture, and there's no place to display it.  You can fetch the field using the REST or SOAP APIs, though, and display the picture in a separate web page.

Another way to work this is by using a cloud storage service.  Upload the image field first (in the Forms 2.0 onSubmit event), get the resulting URL, then post just the URL to Marketo.  Again, the image itself isn't going to pop up within Marketo, but it'll be a live URL link that a user can click.

Any such work should be done with an experienced JS developer.