DataMapperDefinition

Represents a Data Mapper's header configurations, such as its name and type. Data Mappers transfer and transform data between Salesforce and Omnistudio components. They act as data sources in Flexcards and as actions in Omniscripts.

Parent Type

This type extends the Metadata metadata type and inherits its fullName field.

File Suffix and Directory Location

DataMapperDefinition components have the suffix .dataMapperDefinition and are stored in the dataMapperDefinitions folder.

Version

DataMapperDefinition components are available in API version 67.0 and later.

Special Access Rules

Fields

Field Name Description
batchSize
Field Type
double
Description
The number of items to process in a batch action. You can add any value up to 2000.
cleanResponseCacheType
Field Type
CleanResponseCacheType
Description
Specifies the cache type used to store response data for this definition.
dataMapperDefinitionItem
Field Type
DataMapperDefinitionItem
Description
The configuration of a component inside a Data Mapper.
description
Field Type
string
Description
The description added to the Data Mapper.
expectedInputJson
Field Type
string
Description
The sample input JSON format to assist the user with Data Mapper configuration, such as providing auto complete options.
expectedInputOtherData
Field Type
string
Description
The expected custom input payload format to assist in the Data Mapper configuration when data must be transformed.
expectedInputXml
Field Type
string
Description
The expected XML format of the input.
expectedOutputJson
Field Type
string
Description
The sample output JSON format to assist the user with Data Mapper configuration in various ways, such as by providing auto complete options.
expectedOutputOtherData
Field Type
string
Description
The sample output in a custom format to assist the user with Data Mapper configuration in various ways, such as by providing auto complete options.
expectedOutputXml
Field Type
string
Description
The sample output XML format to assist the user with Data Mapper configuration in various ways, such as by providing auto complete options.
globalKey
Field Type
string
Description
The globally unique identifier of the Data Mapper definition. Use this identifier to identify the component across Salesforce orgs.
inputParsingClassName
Field Type
string
Description
The custom Apex class used to deserialize input to support any serialization format.
inputType
Field Type
DataMapperInputType (enumeration of type string)
Description
The format of the input data, such as JSON, XML, SObject, and so on.
Values

Values are:

  • JSON
  • XML
  • SObject
  • Custom
isActive
Field Type
boolean
Description
Indicates whether this Data Mapper is currently active (true) or not (false).
isAssignmentRulesUsed
Field Type
boolean
Description
Indicates whether Salesforce Assignment Rules must used (true) or not (false).
isDeletedOnSuccess
Field Type
boolean
Description
Indicates whether bulk records must be deleted after being successfully processed on bulk-loading (true) or not (false).
isErrorIgnored
Field Type
boolean
Description
Indicates whether the Data Mapper definition must continue processing if there are errors (true) or not (false).
isFldLevelSecurityEnabled
Field Type
boolean
Description
Indicates whether the Data Mapper definition must check the user's field-level access (true) or not (false).
isManagedUsingStdDesigner
Field Type
boolean
Description
Indicates whether the Data Mapper is created or updated using the Omnistudio standard designer.
isNullInpIncludedInOput
Field Type
boolean
Description
Indicates whether fields missing in the input (or null) must nullify the values in the record (true) or ignore the missing input and only update the fields that were provided in the input (false).
isProcessSuperBulk
Field Type
boolean
Description
Indicates whether the Load Data Mapper processes the record upsert spread over multiple Salesforce Apex batch jobs (true) or not (false). Process Super Bulk is a Data Mapper property available if the Input Type is sObject. It helps process large jobs spread over multiple Salesforce Apex batch jobs without exceeding Salesforce governor limits.
isRollbackOnError
Field Type
boolean
Description
Indicates whether the Data Mapper definition must continue executing if there's an error (false) or not (true). Control whether the current transaction is rolled back and any records created up until the point of error are removed.
isSourceObjectDefault
Field Type
boolean
Description
Indicates whether it is the default Data Mapper definition setting for the specified Interface Object (true) or not (false).
isXmlDeclarationRemoved
Field Type
boolean
Description
Indicates whether the XML header declaration must be removed (true) or not (false).
masterLabel
Field Type
string
Description
The user-defined label of the component.
outputParsingClassName
Field Type
string
Description
The unique identifier of the custom Apex class that's used to deserialize the output to support any serialization format.
outputType
Field Type
DataMapperOutputType (enumeration of type string)
Description
The data format or object used in the output, such as JSON, XML, SObejct, PDF, or Document.
Values

Values are:

  • JSON
  • XML
  • SObject
  • PDF
  • Custom
  • DocuSign
overrideKey
Field Type
string
Description
The unique identifier of the Data Mapper that's being overriden.
preprocessorClassName
Field Type
string
Description
The custom Apex class name to be executed before the Data Mapper definition is triggered.
previewJsonData
Field Type
string
Description
The preview of the Data Mapper's JSON with the existing input data.
previewOtherData
Field Type
string
Description
The custom content in the Data Mapper's preview, when an input is added while previewing.
previewSourceObjectData
Field Type
string
Description
The source object record in the Data Mapper's preview when an input is added while previewing.
previewXmlData
Field Type
string
Description
The XML content in the Data Mapper's preview, when an input is added while previewing.
references
Field Type
string
Description
The list of referenced components used by this definition.
requiredPermission
Field Type
string
Description
The list of custom permissions that allow a user to execute the Data Mapper definition.
responseCacheTtlMinutes
Field Type
double
Description
The number of minutes the Data Mapper Definition response must stay in the cache.
sourceObject
Field Type
string
Description
The sObject used as an input in a Load Data Mapper.
synchronousProcessThreshold
Field Type
double
Description
The foreign key to the Apex class the Data Mapper Definition references.
targetOutputDocIdentifier
Field Type
string
Description
The envelope ID of a document template when using DocuSign.
targetOutputFileName
Field Type
string
Description
The document name that receives the output of the Data Mapper Definition.
type
Field Type
DataMapperType (enumeration of type string)
Description
Specifies the category or type of this component.
Values

Values are:

  • Extract
  • Load
  • Transform
xmlOutputTagsOrder
Field Type
string
Description
The XML tag sequence to be used in the output.

DataMapperDefinitionItem

Field Name Description
dataMapperDefItemName
Field Type
string
Description
The name of a specific item within a Data Mapper.
dataMapperDefinitionName
Field Type
string
Description
The name of the Data Mapper that this item belongs to.
defaultValue
Field Type
string
Description
The user-defined value for the Default Value field, entered when completing the output mappings.
filterDataType
Field Type
DMItemFilterDataType (enumeration of type string)
Description
The field data type used in a Data Mapper Turbo definition.
Values

Values are:

  • ADDRESS
  • ANYTYPE
  • BASE64
  • BOOLEAN
  • COMBOBOX
  • CURRENCY
  • DATACATEGORY
  • GROUPREFERENCE
  • DATE
  • DATETIME
  • DOUBLE
  • EMAIL
  • ENCRYPTEDSTRING
  • ID
  • INTEGER
  • LONG
  • MULTIPICKLIST
  • PERCENT
  • PHONE
  • PICKLIST
  • REFERENCE
  • STRING
  • TEXTAREA
  • TIME
  • URL
filterGroup
Field Type
double
Description
An internal grouping of filter conditions used to process Data Mappers.
filterOperator
Field Type
DMItemFilterOperator (enumeration of type string)
Description
The operator used in a filter in a Data Mapper.
Values

Values are:

  • EQUAL
  • NOTEQUAL
  • LESS
  • GRATER
  • LESS_OR_EQUAL
  • GRATER_OR_EQUAL
  • APPROX
  • LIKE
  • NOT_LIKE
  • INCLUDES
  • EXCLUDES
  • AND
  • OR
  • LIMIT
  • OFFSET
  • ORDER_BY
  • IN
  • IS_NULL
filterValue
Field Type
string
Description
The field used in a filter in a Data Mapper.
formulaConverted
Field Type
string
Description
The Reverse Polish Notation (RPN) of the formula.
formulaExpression
Field Type
string
Description
The user-defined formula entered into the Formula tab of the Data Mapper.
formulaResultPath
Field Type
string
Description
The user-defined variable name used to store the output of the formula.
formulaSequence
Field Type
double
Description
The order in which the formulas are executed.
globalKey
Field Type
string
Description
The globally unique identifier of the Data Mapper definition to identify the component across Salesforce orgs.
inputField
Field Type
string
Description
The field or variable path used while configuring inputs.
inputObject
Field Type
string
Description
The object used to configure the input.
inputObjectQuerySequence
Field Type
double
Description
The order in which the object in the input is queried and executed.
isDisabled
Field Type
boolean
Description
Indicates whether the output must not be generated (true) or is active and must be generated (false).
isRequiredForUpsert
Field Type
boolean
Description
Indicates whether the field is mandatory for the upsert (true) or not (false).
isUpsertKey
Field Type
boolean
Description
Specifies that the field is a key for the object being loaded. The Data Mapper uses the value to determine whether it updates an existing record or inserts a new one.
linkedField
Field Type
string
Description
The field name used to lookup another object in a Data Mapper Load.
linkedObjectSequence
Field Type
double
Description
The order in which the associated object in a Data Mapper Load is executed.
lookupByField
Field Type
string
Description
The field name used to look up a record in a Data Mapper Load output.
lookupObject
Field Type
string
Description
The object name used to look up a record in a Data Mapper Load output.
lookupReturnedField
Field Type
string
Description
The field name that must be returned and used in the Data Mapper Load output.
outputCreationSequence
Field Type
double
Description
The order in which the output paths must be created.
outputField
Field Type
string
Description
The field, node, or tag in the object used in the output path.
outputFieldDataType
Field Type
string
Description
The data type of the field, node, or tag in the output path.
outputObject
Field Type
string
Description
The name of the object used in the output path.
valueMapping
Field Type
string
Description
The key-value pair JSON list used to convert output values into another value.

Declarative Metadata Sample Definition

The following is an example of a DataMapperDefinition component.

1<?xml version="1.0" encoding="UTF-8"?>
2<DataMapperDefinition xmlns="http://soap.sforce.com/2006/04/metadata">
3    <fullName>TestDataMapperDefinition</fullName>
4    <masterLabel>Test Data Mapper Definition</masterLabel>
5    <batchSize>200</batchSize>
6    <description>Test Data Mapper Definition for Metadata Gauntlet</description>
7    <expectedInputJson>{"testInput":"value"}</expectedInputJson>
8    <expectedInputOtherData></expectedInputOtherData>
9    <expectedInputXml>&lt;test&gt;value&lt;/test&gt;</expectedInputXml>
10    <expectedOutputJson>{"testOutput":"value"}</expectedOutputJson>
11    <expectedOutputOtherData></expectedOutputOtherData>
12    <expectedOutputXml>&lt;output&gt;value&lt;/output&gt;</expectedOutputXml>
13    <globalKey>TestDataMapperDefinition_1</globalKey>
14    <inputType>JSON</inputType>
15    <isActive>true</isActive>
16    <isAssignmentRulesUsed>false</isAssignmentRulesUsed>
17    <isDeletedOnSuccess>false</isDeletedOnSuccess>
18    <isErrorIgnored>false</isErrorIgnored>
19    <isFldLevelSecurityEnabled>false</isFldLevelSecurityEnabled>
20    <isManagedUsingStdDesigner>true</isManagedUsingStdDesigner>
21    <isNullInpIncludedInOput>false</isNullInpIncludedInOput>
22    <isProcessSuperBulk>false</isProcessSuperBulk>
23    <isRollbackOnError>true</isRollbackOnError>
24    <isSourceObjectDefault>false</isSourceObjectDefault>
25    <isXmlDeclarationRemoved>false</isXmlDeclarationRemoved>
26    <outputType>JSON</outputType>
27    <overrideKey></overrideKey>
28    <previewJsonData>{"preview":"data"}</previewJsonData>
29    <previewOtherData></previewOtherData>
30    <previewSourceObjectData></previewSourceObjectData>
31    <previewXmlData></previewXmlData>
32    <references>[]</references>
33    <requiredPermission></requiredPermission>
34    <cleanResponseCacheType>Session Cache</cleanResponseCacheType>
35    <responseCacheTtlMinutes>0</responseCacheTtlMinutes>
36    <sourceObject></sourceObject>
37    <synchronousProcessThreshold>0</synchronousProcessThreshold>
38    <targetOutputDocIdentifier></targetOutputDocIdentifier>
39    <targetOutputFileName></targetOutputFileName>
40    <type>Transform</type>
41    <xmlOutputTagsOrder></xmlOutputTagsOrder>
42    <dataMapperDefinitionItem>
43        <dataMapperDefItemName>Item1</dataMapperDefItemName>
44        <dataMapperDefinitionName>TestDataMapperDefinition</dataMapperDefinitionName>
45        <defaultValue>defaultValue</defaultValue>
46        <filterDataType>STRING</filterDataType>
47        <filterGroup>1</filterGroup>
48        <filterOperator>EQUAL</filterOperator>
49        <filterValue>testFilter</filterValue>
50        <formulaConverted></formulaConverted>
51        <formulaExpression></formulaExpression>
52        <formulaResultPath></formulaResultPath>
53        <formulaSequence>1</formulaSequence>
54        <globalKey>TestItem1_Key</globalKey>
55        <inputField>inputFieldPath</inputField>
56        <inputObject>Account</inputObject>
57        <inputObjectQuerySequence>1</inputObjectQuerySequence>
58        <isDisabled>false</isDisabled>
59        <isRequiredForUpsert>false</isRequiredForUpsert>
60        <isUpsertKey>false</isUpsertKey>
61        <linkedField></linkedField>
62        <linkedObjectSequence>0</linkedObjectSequence>
63        <lookupByField></lookupByField>
64        <lookupObject></lookupObject>
65        <lookupReturnedField></lookupReturnedField>
66        <outputCreationSequence>1</outputCreationSequence>
67        <outputField>outputFieldPath</outputField>
68        <outputFieldDataType>STRING</outputFieldDataType>
69        <outputObject>Contact</outputObject>
70        <valueMapping></valueMapping>
71    </dataMapperDefinitionItem>
72</DataMapperDefinition>

The following is an example package.xml that references the previous definition.

1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3    <types>
4        <members>*</members>
5        <name>DataMapperDefinition</name>
6    </types>
7    <version>[ftest]</version>
8</Package>

Wildcard Support in the Manifest File

This metadata type supports the wildcard character * (asterisk) in the package.xml manifest file. For information about using the manifest file, see Deploying and Retrieving Metadata with the Zip File.