---
schema_version: "1"
id: 122f8dc00ca7dcb14304ca6eeb794ca9e21fdd030c0fc2461e11ad81a1e80512
title: Omnistudio Data Mapper Extract Output (Managed Package)
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/os_dataraptor_extract_output.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.os_dataraptor_extract_output.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: d04608dee5131a39de3ac9c67d84bd0d64eff082d73bc8952a4d9a7fbfd99f9c
description: For the managed package runtime, to map data from the extraction step JSON to the output JSON, go to the Output tab. You can also handle null values, attributes, translations, field-level permissions, caching, and list transforms.
products:
  - Omnistudio
release: "264"
---
# Omnistudio Data Mapper Extract Output (Managed Package)

For the managed package runtime, to map data from the extraction step JSON to the output JSON, go to the Output tab. You can also handle null values, attributes, translations, field-level permissions, caching, and list transforms.

![Managed Package app icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio_for_managed_packages-264-0-0-production-enus/aa2554ec-624a-4ee6-8da4-6435670e6e62/resources-global/_corporate/images/managedpackageicon.png) This information is for Omnistudio for Managed Packages. For Omnistudio on standard runtime, see [Omnistudio Help](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_standard.htm&language=en_US).

1. Click +. An empty mapping is added to the list.
2. In the Extract JSON Path field, choose the source field from the extraction step JSON.
3. In the Output JSON Path field, specify the desired output path.

The Current JSON Output pane displays the structure that your output mappings specify.

Best practice: When possible, name the Extract Output Path on the Extract tab for the Salesforce object that is its data source. This defines the first node of the Extract JSON Path field values.

You can improve Data Mapper performance for some use cases by using relationship notation in the Extract JSON Path field. See [Relationship Notation versus Multiple Extract Steps (Managed Package)](https://help.salesforce.com/s/articleView?id=xcloud.os_relationship_notation_versus_multiple_extract_steps.htm&release=264.0.0&type=5 "For the managed package runtime, using relationship notation improves the performance of Omnistudio Data Mappers that retrieve data from a parent of the primary sObject. You use this notation in the Extract JSON Paths for the parent sObject's fields instead of adding a second sObject in the Data Mapper's Extract tab. Two examples illustrate how to use relationship notation.").

You can also use formulas to add output data. For details, see [Use Formulas in Omnistudio Data Mappers (Managed Package)](https://help.salesforce.com/s/articleView?id=xcloud.os_use_formulas_in_dataraptors.htm&release=264.0.0&type=5 "For the managed package runtime, to add data to the output of a Data Mapper, define formulas. Several types of Data Mapper (Extract, Transform, and Load) support formulas. When you define a formula, you map its output to the output JSON (for extracts and transforms) or Salesforce object field (for loads).") and [Function Reference (Managed Package)](https://help.salesforce.com/s/articleView?id=xcloud.os_function_reference.htm&release=264.0.0&type=5 "For the managed package runtime, use these operators and functions in Omnistudio Data Mappers and Integration Procedures, and in Vlocity Intelligence, eligibility rules, underwriting rules, state rules, and calculation procedures.").

## Quick Match for Output Maps

To bulk-match, click the Quick Match button. In the Quick Match dialog, you can map fields as follows:

- Drag and drop: Drag the source sObject field from the left column to the target output field in the middle column, or vice-versa. For an output that has no source sObject field, drag the output mapping to the Matched Mappings column.
- Pair: Select an input field and an output field and click Pair.
- Auto Match: Click Auto Match. Fields with matching names are matched automatically.

Mappings are displayed in the right-hand Matched Mappings column.

To redefine values after they are read from Salesforce, go to the Transform Map Values section and add key/value pairs that specify the input and output values. For example, to transform an input value of TRUE to an output value of Y (for yes), specify KEY = TRUE and VALUE = Y.

![Tip](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio_for_managed_packages-264-0-0-production-enus/aa2554ec-624a-4ee6-8da4-6435670e6e62/images/icon_tip.png)

Tip

To make mapping a large number of fields easier, paste the data JSON from the calling Omniscript or Integration Procedure into the Expected JSON Output pane, which populates the list of paths in the Output JSON Path field.

## Null Values

To specify a value to be output when the field is null, set the Default Value property. To override the default data type, specify **Output Data Type**. To prevent data loss, choose compatible data types.

For example, if a text value always contains numeric data, a numeric output type is fine. If it might contain alphabetic characters, you must choose a textual output data type.

By default, if a value is null, no node is created for the field in the output JSON. To ensure that a node is created, regardless of whether the field is null, go to the Options tab and check Overwrite Target For All Null Inputs.

If the Data Mapper Extract retrieves no records, what it returns depends on the release:

- In Summer '18 and prior releases, `null` is returned.
- In Fall '18 and later releases, empty JSON, `{}`, is returned.

## Object Attributes

To map object attributes, specify the attribute using its code (not its name) preceded by @. (By default, attribute codes are assigned a GUID value when the attribute is created, and you can edit the code to specify a human-readable value.) To use @ to retrieve attributes, the EnableV2AttributeModel setting in Setup > Custom Settings > Vlocity Feature must be set to true. If it's not, see [Knowledge Article: DataRaptor doesn't retrieve Vlocity attributes](https://issues.salesforce.com/issue/a028c00000ixH0HAAU/vlocity-dataraptor-doesnt-retrieve-vlocity-attributes-on-quotelineitem)

For example, to find out if an account is tagged as a Gold Star account, use a Data Mapper Extract to read the Gold Star attribute:

![image](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio_for_managed_packages-264-0-0-production-enus/aa2554ec-624a-4ee6-8da4-6435670e6e62/omnistudio_for_managed_packages/images/attributeextract.png)

Result:

```
{
	"Id": "0016100001Ey84KAAR",
	"GoldStarAccount": "On"
}		
```

By default, an On-Off type attribute returns no output if its value is Off. However, you set the Default Value property to `Off` to return either value.

If you need a different output value for an attribute, you can use the Transform Map Values option. For example, for an On-Off type attribute, you can add key/value pairs that map `On` to `true` and `Off` to `false`.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio_for_managed_packages-264-0-0-production-enus/aa2554ec-624a-4ee6-8da4-6435670e6e62/images/icon_note.png)

Note

For ​Salesforce Industries Communications, Media, and Energy customers who use Industries Order Management, attribute mappings using the JSONAttribute v2 Schema aren’t supported for the vlocity\_cmt\_\_FulfilmentRequestLine\_\_c object.

## JSON Data in Fields

Some fields contain JSON data. To map this data, use standard notation in the Extract JSON Path, for example:

```
Object:JsonField__c:JsonNode:ChildJsonNode
```

## Translations

To configure the Data Mapper to retrieve translated Product data, go to the Options tab and check Use Translations.

When this option is enabled, the Data Mapper returns string translations for the user's locale. If no string translations are defined for the locale, the product data defined in the base language is returned. For example, if the base product data is entered in English and no French string translations are defined, users with a French locale see English product data. To specify string translations for product fields, go to the Vlocity Product Console. Create Products in the Product Console

## Permissions, Caching, and Other Options

You can configure additional optional settings on the Options tab.

- **Check Field Level Security**: Checks the user's access permissions for the fields before executing the Data Mapper. Enabling this setting disables the Org Cache but not the Session Cache.
- **Overwrite Target For All Null Inputs**: Ensures that an output node is created regardless of whether a field is null.
- **Use Translations**: Configures a Data Mapper to retrieve translated Product data.
- **Time To Live In Minutes**: If data caching is enabled, determines how long data remains in the cache. The minimum value is 5.
- **Salesforce Platform Cache Type**: Enables data caching. Set to **Session Cache** for data related to users and their login sessions, or to **Org Cache** for all other types of data. See [Cache for Omnistudio Data Mappers (Managed Package)](https://help.salesforce.com/s/articleView?id=xcloud.os_cache_for_dataraptors_and_integration_procedures.htm&release=264.0.0&type=5 "For the managed package runtime, Omnistudio offers multiple caching options to improve performance and minimize unnecessary data processing in Data Mappers. The two primary user-configurable caching types are Org Cache and Session Cache, which are available in the Data Mapper designer. These caching mechanisms are part of the Salesforce Platform Cache and are implemented through Vlocity Cache in Omnistudio with managed package runtime. Each serves a distinct purpose and comes with specific configuration considerations.").

## List Maps

To map data into a list in the output, use the `listname|#` syntax.

The listname specifies the key of the output node and the # specifies the position in the list where the output resides. Note the pipe (`|`) symbol separator. The following example illustrates how to map a flat set of input nodes to an output list.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d233972e376">
              <p style="margin-bottom:0;">Input JSON</p>
            </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d233972e382">
              <p style="margin-bottom:0;">Mappings</p>
            </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d233972e388">
              <p style="margin-bottom:0;">Output JSON</p>
            </th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Input JSON" class="slds-cell-wrap" style="vertical-align:top;" headers="d233972e376 ">
              <pre class="line-numbers slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium slds-scrollable_x"><code>{
 "Thing1": "1",
 "Thing2": "2",
 "Thing3": "3"
}</code></pre>
            </td>

            <td data-label="Mappings" class="slds-cell-wrap" style="vertical-align:top;" headers="d233972e382 ">
              <pre class="line-numbers slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium slds-scrollable_x"><code>Thing1 → Thinglist|1
Thing2 → Thinglist|2
Thing3 → Thinglist|3</code></pre>
            </td>

            <td data-label="Output JSON" class="slds-cell-wrap" style="vertical-align:top;" headers="d233972e388 ">
              <pre class="line-numbers slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium slds-scrollable_x"><code>{
 "Thinglist": 
 [ "1", "2", "3" ]
}</code></pre>
            </td>

          </tr>
        </tbody>
      </table>

For more about lists in Data Mappers, see [List Input for Omnistudio Data Mappers (Managed Package)](https://help.salesforce.com/s/articleView?id=xcloud.os_list_input_for_dataraptors.htm&release=264.0.0&type=5 "For the managed package runtime, Data Mappers can perform list transformations. For mapping input to output, Data Mappers require a list input in which every value is paired with a key.").

## What's Next