---
schema_version: "1"
id: 43dedb546b4601269eb0e8e58e3ba100aaa27b0f74cd4e6b21379b2f01ba08cf
title: Omnistudio Data Mappers
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/os_omnistudio_dataraptors_45587.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_dataraptors_45587.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 4a8de061066ea5ac0cd89d29c8178eaf72b9103f3974896e69b76308892fc040
description: Use Omnistudio Data Mappers to declaratively retrieve, write, and modify data between Salesforce and other Omnistudio components. While you can process data with custom code (such as Apex classes), Omnistudio Data Mappers are faster to build, easier to update, and simpler to manage. They’re also reusable, helping you to move solutions quickly from development to production.
products:
  - Omnistudio
release: "264"
---
# Omnistudio Data Mappers

Use Omnistudio Data Mappers to declaratively retrieve, write, and modify data between Salesforce and other Omnistudio components. While you can process data with custom code (such as Apex classes), Omnistudio Data Mappers are faster to build, easier to update, and simpler to manage. They’re also reusable, helping you to move solutions quickly from development to production.

## Types of Data Mappers

For each task of retrieving, writing, and transforming data, Omnistudio has a different type of Data Mapper.

Data Mapper Extract, Turbo Extract, and Load can handle [Custom Input and Output for Omnistudio Data Mappers in Omnistudio](https://help.salesforce.com/s/articleView?id=xcloud.os_custom_input_and_output_for_dataraptors_in_omnistudio_47987.htm&release=264.0.0&type=5 "By default, Data Mappers handle JSON and XML data. To handle other data formats, you can configure a Data Mapper to use a custom input or output that you implement is a custom class. For example, you can define a Data Mapper Transform that accepts CSV-formatted data and outputs it as JSON."). Data Mappers can access [external objects](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_external_objects.htm#), custom metadata, and Salesforce objects. No special syntax or configuration is required.

![A diagram shows how all four types of data mappers work with different sources and data](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-omnistudio-264-0-0-production-enus/f526eaa8-ae05-487a-8944-4bb99b0b78ac/omnistudio/images/os-data-mapper-uses.png)

- Data Mapper Extract — reads data from one or more Salesforce objects and JSON output, custom data, or XML with field mappings.
- Data Mapper Turbo Extract — reads data from a single Salesforce object along with fields from related objects. The Turbo Extract is faster at run time and is useful for simpler extractions that don’t require queries or more complex output mapping.
- Data Mapper Load — creates and updates Salesforce data from JSON, XML, or custom input.
- Data Mapper Transform — transforms input data into a new structure as output. Output examples include renamed fields, restructured XML or JSON, changes with formulas and functions, and converted formats (such as from JSON to PDF). Because it works with data in memory, it doesn’t use a Salesforce Object Query Language (SOQL) query or other means to read from Salesforce objects.

## Data Mappers in a Workflow

Data Mappers typically supply Salesforce data to Omniscripts, Integration Procedures, Flexcards, and Apex classes, and write the related updates to Salesforce.

For example, an Omniscript guides customers through a workflow to update their account.

1. The Omniscript calls a Data Mapper Extract to read data from Salesforce, such as the Account object.
2. A customer modifies and adds new data in the Omniscript.
3. A Data Mapper Transform checks the input data and changes it to the right formats as needed.
4. The Omniscript calls Data Mapper Load to write the new and modified data to Salesforce.

## Data Mapper Extract

Data Mapper Extracts read Salesforce data and return results in JSON, XML, or custom formats. You can filter the data and select the fields to return. You can use formulas, default values, and translations on your data. Data Mapper Extract provides required data to Omniscripts, Integration Procedures, and Flexcards.

Configure the Data Mapper Extract, define the initial extraction, add formulas, add fields, create mapping, and set properties. See [Configure an Omnistudio Data Mapper Extract](https://help.salesforce.com/s/articleView?id=xcloud.os_define_the_initial_extraction_45906.htm&release=264.0.0&type=5 "Configure a Data Mapper Extract by specifying the object and filters. To enhance the performance of the Data Mapper Extract, you can define formulas, add fields to write data to, create mappings, and configure additional properties.").

Determine whether you need multiple extract steps or relationship notation. See [When to Use Multiple Extract Steps](https://help.salesforce.com/s/articleView?id=xcloud.os_when_to_use_multiple_extract_steps_45967.htm&release=264.0.0&type=5 "The number of extract steps that you need depends on how the object types that you’re extracting from are related. There are three basic scenarios: single, single with relationship notation, and multiple.") and [Relationship Notation versus Multiple Extract Steps](https://help.salesforce.com/s/articleView?id=xcloud.os_relationship_notation_versus_multiple_extract_steps_45995.htm&release=264.0.0&type=5 "Using relationship notation improves the performance of Omnistudio Data Mappers that retrieve data from a parent of the primary object. Use this notation in the Extract JSON Paths for the parent object's fields instead of adding a second object in the Data Mapper's Extract tab.").

## Data Mapper Turbo Extract

Data Mapper Turbo Extract gets data from a single Salesforce object type and includes fields from related objects. You can filter the data, and select the fields to return by mapping the related objects. You can’t use formulas, custom JSON, default values, and transformations on a Data Mapper Turbo Extract.

When compared with a Data Mapper Extract, a Data Mapper Turbo Extract offers simpler configuration and better performance at run time.

## Data Mapper Load

Data Mapper Load accepts input data in JSON, XML, or custom formats and writes the data to Salesforce objects. You can use formulas and attributes on your data. For example, a user runs a case-handling Omniscript, finishes entering data, and saves. The script calls a Data Mapper Load to record the data entered.

A Data Mapper Load can get input data in three ways:

- Omniscript or Integration Procedure — during execution, an Omniscript or Integration Procedure builds JSON with the data required for the business use case. When the script invokes the Data Mapper Load, the JSON is sent as input.
- Data Mapper API REST call — if a call invokes a Data Mapper by using a POST action, the payload of the call can include the JSON.
- Apex code — specify the JSON as a parameter in the Apex code to the Data Mapper Load.

To modify the input data, you can define formulas, transform values, and change the output data type. See [Use Formulas in Omnistudio Data Mappers](https://help.salesforce.com/s/articleView?id=xcloud.os_use_formulas_in_dataraptors_47540.htm&release=264.0.0&type=5 "To add data to the output of a Data Mapper, define formulas. Several types of Data Mappers (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)."). To specify how the resulting data is written to Salesforce objects, you map fields from the output JSON to fields in Salesforce objects. See [Configure an Omnistudio Data Mapper Load](https://help.salesforce.com/s/articleView?id=xcloud.os_object_field_mapping_47137.htm&release=264.0.0&type=5 "Configure a Data Mapper Load by specifying the object type and filters. To enhance the performance of the Data Mapper Load, you can define formulas, add fields to write data to, and configure additional properties."). When invoked, the Data Mapper Load applies its mappings and formulas to the input data to create the output data. Then it loads the output data into Salesforce objects according to the mappings.

## Data Mapper Transform

Data Mapper Transform performs transformation of intermediate data without reading from or writing to Salesforce objects. You can add formulas to the data.

Data Mapper Transform performs these tasks:

- Convert an input data to an output data, and vice versa. The input and output data can be in JSON or XML format.
- Restructure input data and rename fields.
- Substitute values in fields (all Data Mappers can substitute values)
- Convert data to PDF, Docusign, or document template format.

Data Mapper Transform is essential for Omniscripts that must populate a Docusign template. See [Creating a Data Mapper Interface to Map an OmniScript to DocuSign](https://help.salesforce.com/s/articleView?id=xcloud.os_populating_a_docusign_template_using_dataraptor_transform_23848.htm&release=264.0.0&type=5 "Map Omniscript data to a Docusign template using a Data Mapper Transform.") . It's also essential to fill fields in a PDF document. See [Creating a Data Mapper Interface to Map an OmniScript to a PDF](https://help.salesforce.com/s/articleView?id=xcloud.os_fill_a_pdf_from_omniscript_using_dataraptor_23204.htm&release=264.0.0&type=5 "You can fill an existing PDF form with the PDF action and an Omnistudio Data Mapper.").

- **[Working with Omnistudio Data Mappers](https://help.salesforce.com/s/articleView?id=xcloud.os_standard_data_mapper_workflow.htm&release=264.0.0&type=5)**  
    Use the Data Mapper Designer to build and configure server-side processes that declaratively retrieve, write, and modify data. You can create Data Mappers from the Omnistudio or Data Mappers app. Or you can create them from Data Mapper elements in Integration Procedures and Omniscripts.
- **[Build an Omnistudio Data Mapper](https://help.salesforce.com/s/articleView?id=xcloud.os_build_data_mapper.htm&release=264.0.0&type=5)**  
    To get, save, and modify Salesforce data, build Data Mappers with the basic configurations: Input source, queries, formulas, mappings of input and output data, and output destination. The available configurations depend on the type of Data Mapper that you’re building.
- **[Invoke Omnistudio Data Mappers](https://help.salesforce.com/s/articleView?id=xcloud.os_invoke_data_mappers.htm&release=264.0.0&type=5)**  
    Easy to build and reusable, you can call Data Mappers from other Omnistudio tools, such as Integration Procedures, Omniscripts, and Flexcards. But Apex classes, batch jobs, or REST APIs, can also call Data Mappers. With a Data Mapper, centrally manage data transactions to use in multiple applications.
- **[Security for Omnistudio Data Mappers and Integration Procedures](https://help.salesforce.com/s/articleView?id=xcloud.os_security_for_dataraptors_and_integration_procedures_48147.htm&release=264.0.0&type=5)**  
    You can control access to Data Mappers and Integration Procedures using settings that reference Sharing Settings and Sharing Sets or Profiles and Permission Sets.
- **[Preview and Test Data Mappers](https://help.salesforce.com/s/articleView?id=xcloud.os_preview_test_datamappers.htm&release=264.0.0&type=5)**  
    You can preview and test the input and output of a Data Mapper in the Data Mapper Designer.
- **[Examples of Omnistudio Data Mappers](https://help.salesforce.com/s/articleView?id=xcloud.os_examples_data_mappers.htm&release=264.0.0&type=5)**  
    For each type of Data Mapper, examples show how they’re set up for specific, common uses. Each example provides sample JSON for input. Each shows the setup for input, output, mapping, query, and formula, as they apply to the Data Mapper type and the use case.