OmniStudio DataRaptors typically supply data to OmniScripts, Integration Procedures, and Cards, and write updates from OmniScripts, Integration Procedures, and Cards to Salesforce. In this post we will talk about what is OmniStudio dataRaptor and Type of DataRaptor.
What is OmniStudio DataRaptor?
A DataRaptor is a mapping tool that enables you to read, transform, and write Salesforce data. There are four types of DataRaptor: Turbo Extract, Extract, Transform, and Load.
DataRaptors Code Capabilities
Here are some code capabilities of DataRaptor (DR) in Salesforce
ETL For Salesforce : DataRaptor Mapping tool enable read, write and transform JSON and XML inputs. It also helped in perform intermediate data transformation without reading from or writing to Salesforce.
Declarative no code/ Low Code : DataRaptor is a declarative tool and no code is required to get data from salesforce.
Substitute for Apex: Although apex classes can read write and transform data they can take longer to create and are harder to maintain then dataRaptors. Therefore, use dataRaptor as Vlocity best practice.
Handle custom data Formulas : DataRaptor Extract and Load can handle custom data formats. It can access external object and custom metadata as well as sObject.
Type of OmniStudio DataRaptors
Let understand the different type of OmniStudio DataRaptors.
- Turbo Extract: Read data from a single Salesforce object type, with support for fields from related objects. Then select the fields to include. Formulas and complex field mappings aren’t supported.
- Extract: Read data from Salesforce objects and output JSON or XML with complex field mappings. Formulas are supported. We can data from one or more Objects.
- Transform: Perform intermediate data transformations without reading from or writing to Salesforce. Formulas are supported.
- Load: Update Salesforce data from JSON or XML input. Formulas are supported.
DataRaptor Turbo Extract
A DataRaptor Turbo Extract retrieves data from a single Salesforce object type, with support for fields from related objects. You can filter the data and select the fields to return. DataRaptor Turbo Extract doesn’t support formulas. There’s no Output tab, so you can’t use mappings to structure the output. Custom JSON, default values, and translations aren’t supported. But it
- Simpler configuration
- Better performance at runtime
DataRaptor Extracts read Salesforce data and return results in JSON, XML, or custom formats. You can filter the data and select the fields to return. Formulas, default values, and translations are supported. Extracts typically provide OmniScripts, Integration Procedures, and Cards with the data they require.
DataRaptor Transforms let you perform intermediate data transformations without reading from or writing to Salesforce. Formulas are supported.
- Convert JSON input to XML output, and vice versa
- Restructure input data and rename fields
- Substitute values in fields (all DataRaptors can substitute values)
- Convert data to PDF, DocuSign, or Document Template format
DataRaptor Loads accept data in JSON, XML, or custom input formats and write the data to Salesforce objects. Formulas and attributes are supported. For example, when a user running a case-handling OmniScript finishes entering data and clicks Save, the script calls a DataRaptor Load to record the data entered.
OmniStudio DataRaptors Best Practices
- Create targeted DataRaptors that only extract or load the data needed for one operation.
- Use relationship notation (queries) whenever possible to pull data from other SObjects.
- Try to keep the number of SObjects to three or fewer.
- Ensure that all filtering and sorting (ORDER BY) operations are on indexed fields. The Id and Name fields are always indexed.
- Use caching to store frequently accessed, infrequently updated data.
DataRaptor Naming Conventions
- DataRaptor Names Must be unique within the org and there should be No spaces
- Use camelCase – prefix, Verb, Object and Detail
- Use an action verb and descriptive nouns
- Use abbreviations
- Example : prefixVerbObjectDetail and teamGetAcctCases