Data Sources for Forms in Marketing Cloud Next

A data source represents a Salesforce object, which you can use with a form. It creates a bridge between a form field and a CRM object field so that you can save the captured form data in Salesforce records.

To access a data source, a form uses a data provider. A write data provider saves submissions to a data source, and one or more read data providers supply data from a data source to pre-fill fields and drive progressive profiling. The read and write data providers are independent, so a form can write to one data source and read from another.

View supported editions.

Creating a Data Source

The Account, Contact, Lead, and Prospect objects are available to use as a data source for the write data provider. You can also write to an available marketing object, so that marketers can capture data without a CRM object. If a marketing object is available, it’s the default data source for the write data provider. Otherwise, the form defaults to the Lead object. When you name your data source, enter up to 20 characters. You can use alphanumeric characters and underscores, but no spaces or consecutive underscores.

You can use only one data source object at a time for the write data provider. Changing the selected object can create discrepancies in data, so consider the impacts before changing the data source object. The write data provider respects field-level security (FLS), so a form saves only the fields that the running user can edit.

Example
Example Kyle is editing a form that uses Contact as the data source object. He wants to add the Industry field, so he removes the Contact object and uses the Lead object instead. But when he tries to save the form, he gets an error. Because a form can’t contain fields from multiple objects, he needs to decide which fields to keep.

For now, he removes the Industry field, but he makes a note to talk to his admin about a custom Contact field that can serve the same purpose.

Read Data Providers

A read data provider supplies data from a data source to pre-fill form fields and to evaluate progressive profiling rules. Read data providers don’t receive submitted data. A form can read from these data sources: a recipient data graph, a marketing object, or Prospect object (a profile extension of the unified individual). To reference non-recipient data, such as a product catalog, add a read-only lookup data provider. You can add up to two lookup data providers, with a maximum of one marketing object data provider and one recipient data graph. To add and manage read and write data providers, open the Data Sources tab and click Manage Data Sources.

API Names and Fields

Not all field types are available to use with data source objects. If you update a custom field to use an unsupported field type, the form can no longer save captured data. Avoid changing field types, and remove unsupported fields from the form. You can include a data source field on your form only one time—don't add duplicates.

When you add a field that a read data provider supplies, the merge field is namespaced by its data source, such as dataGraph.FirstName, prospect.Company, or myObject__mo.FieldName. This namespacing keeps fields from different data sources distinct in the same form.

You can use these field types.

  • Checkbox
  • Date
  • Date/Time
  • Time
  • Email
  • Phone Number
  • Number
  • Picklist
  • Text
  • Text Area
  • Text Area (Long)
  • URL

The Number of Employees standard field in the Account, Lead, and Prospect objects isn't supported and doesn't appear in the Data Source Field List.

A field's API name is the unique ID used to map data source fields. If you edit a CRM field’s API name after using it in a form, any new data that’s submitted to that field isn’t saved.

When you start with a signup form campaign, the form and landing page are predefined with default API names that you can’t change. If it's necessary to control the API names, it's possible to create a form from your content workspace instead. If you choose this option, you must also manually connect the form to a flow and map related fields.