Meta
The meta section is necessary for assigning the internal declaration of the entities in your CRM system to generic attributes in the mapping. (Every entity that is declared in meta will be included in the FieldDefinitions when downloaded, provided they exist in the CRM.) --> "fielddefinitions" : {}
Depending on the CRM there are various attributes which must be provided.
Syntax Structure
The meta section is structured as a JSON object containing entity definitions. Each entity is represented by a key-value pair where the key is the generic entity name and the value is an object containing properties such as apiName, idProperty, and other optional configurations.
{
"meta": {
"entity_1": {
"apiName": "CRM Entity1",
"idProperty": "Id"
},
"entity_2": {
"apiName": "CRM Entity1",
"idProperty": "Id"
}
}
}2
3
4
5
6
7
8
9
10
11
12
Salesforce Example
For Salesforce, the meta section might look like this, defining common entities such as leads, contacts, accounts, campaign members, and tasks:
{
"meta": {
"lead": {
"apiName": "Lead",
"idProperty": "Id"
},
"contact": {
"apiName": "Contact",
"idProperty": "Id"
},
"account": {
"apiName": "Account",
"idProperty": "Id"
},
"campaignMember": {
"apiName": "CampaignMember",
"idProperty": "Id"
},
"task": {
"apiName": "Task",
"idProperty": "Id"
}
}
}2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Available entity meta properties
apiName
The apiName property specifies the actual name of the entity in the CRM system.
Example: "apiName": "Lead"
idProperty
The idProperty defines the unique identifier field used internally by the CRM system for this entity. This is typically used for record identification and referencing.
Example: "idProperty": "Id"
allowedActions
allowedActions define which operations are permitted on the entity, such as creating new records or updating existing ones. It helps enforce business rules at the mapping level.
Example:
{
"allowedActions": {
"create": false,
"update": true
}
}2
3
4
5
6
invalidations
The invalidations property allows you to define conditions that, when met, will trigger error messages. This provides validation rules for entity operations.
Example:
{
"invalidations": {
"create": [
{
"message": "This is not allowed!",
"condition": "{{ mergedItem.RecordType == '1000101' }}"
}
]
}
}2
3
4
5
6
7
8
9
10