Forms can be pre-filled by passing parameters in the query string of the page containing the form, in the format data_fieldname=value. The field name is the system name of a field in the offer’s form structure.
This reduces friction and improves the user experience by displaying information you already know, such as name, email or phone number.
The Pre-filling fields feature must be enabled in the Offer settings.
The data_ prefix
The prefix is what separates field values from everything else in the URL. affcid is a tracking parameter, data_email is a value going into a field called email.
Global fields carry their own prefix instead, so a global email is g_email rather than data_g_email. See Local, Global and Custom fields.
Building the URL from a lead you already have
If you want to generate a pre-filled URL for each lead, create a hidden form field that combines all the values in this format:
data_fieldname1=value1&data_fieldname2=value2&data_fieldname3=value3
Store it without the domain, so you can append it to any destination URL, for example in an email campaign.
Remember that values have to be URL-encoded. An address with a space or an email with a plus sign breaks the query string otherwise, and the fields after it are lost.
Anyone with the link can read it
A pre-filled URL carries personal data in plain sight. It sits in browser history, in server logs on the receiving side, and in the referrer header of anything the page loads.
That is usually acceptable for a link you send to that person by email, and not acceptable for a link that could be shared or indexed. Do not pre-fill anything you would not put on a postcard.
You might also want to check out the Auto submit feature, which automatically submits the pre-filled form without requiring user action.

