Appendix C. Configuring JSON File

A JSON template is a file that you can use to specify what text fields Veeam Backup for Salesforce will treat as custom lookup fields. To configure the template, download it and modify the following parameters:

  • object — a child object that is linked to a parent object.
  • field — a text field of the child object that links it to the parent object.
  • target_object — the parent object.
  • search_by_string — defines how Veeam Backup for Salesforce searches for a record ID in the text field value.

If the value contains additional characters other than a 18-character record ID, this parameter must be set to true. Otherwise, Veeam Backup for Salesforce will look only through the first 18 characters of the value.

Note

It is recommended that you do not set this parameter to true if the record field contains only a 18-character record ID, as it may take Veeam Backup for Salesforce significant time to perform a restore operation.

  • json_path — the path to the parent record ID. This parameter applies only to field values in the JSON format.
  • index_type — defines how Veeam Backup for Salesforce creates indexes to search for records. If the record field value contains a single 18-character record ID, the parameter value must be set to btree. This parameter applies only to field values in the default text format.

Example 1: Field Value in Default Format

This example shows how to configure a JSON template for an object contaning custom record fields whose value is in the default text format, provided that the value includes a single 18-character record ID. In this case, the search_by_string parameter value must be set to false.

{

"object": "Object_with_custom_Field",

"field": "Field_value_is_18_char_Id",

"target_object": "Referenced_Object",

"search_by_string": false,

"index_type": "btree",

"field_example": "001gL00000FKvPhQAL"

}

If the field value includes multiple record IDs, the search_by_string parameter value must be set to true.

{

"object": "Object_with_custom_Field",

"field": "Field_value_is_string_with_several_Ids",

"target_object": "Referenced_Object",

"search_by_string": true,

"index_type": "gin",

"field_example": "12345 001gL00000FKvPhQAL:003gL000007yyzlQAA"

}

Example 2: Field Value in JSON Format

This example shows how to configure a JSON template for an object containing custom record fields whose value is in the JSON format, provided that the value includes a 18-character record ID only. In this case, the search_by_string parameter value must be set to false.

{

"object": "Object_with_custom_Field",

"field": "Field_value_is_json__array_is_supported",

"target_object": "Referenced_Object",

"search_by_string": false,

"index_type": "gin",

"json_path": "$.Accounts[*].Id",

"field_example": "{\"Accounts\":[{\"Id\": \"001gL00000FKvPhQAL\",\"Name\": \"Test Account\"}]}"

}

If the field value includes not only the 18-character record ID but also some additional characters, the search_by_string parameter value must be set to true.

{

"object": "Object_with_custom_Field",

"field": "Field_value_is_json_AND_parameter_is_string",

"target_object": "Referenced_Object",

"search_by_string": true,

"index_type": "gin",

"json_path": "$.Accounts[*].Id",

"field_example": "{\"Accounts\":[{\"Id\": \"New 001gL00000FKvPhQAL\",\"Name\": \"Test Account\"}]}"

}

Tip

You can configure the template for multiple parent objects by adding a separate configuration entry for each of these objects.

Page updated 4/16/2026

Page content applies to build 3.2.0.3957