Author: Bhavya Chanan & Sanjeevani Shukla
In this blog we are going to start with the Service Management Layer in Omnistudio and cover Turbo Extract DataRaptor in detail.
For those who have not gone through the previous blog,
Omnistudio is a drag n drop based tool based on what you see is what you get model which enables users to implement complex functionalities without writing custom code.
Find the link of the previous blog below to brush up the prerequisite :
Omnistudio has 3 layers.
Digital Experience layer which is more of a UI layer containing components like Flexcards and Omniscripts.
Service Management layer which focuses on the backend processing though DataRaptors and Integration Procedures.
Developer Experience layer comes into picture once we are through with the development and focussing on deployment.
Today we are going to start off with DataRaptors which is a part of Service Management layer of Omnistudio.
DataRaptors are basically used to get the data from Salesforce or update, insert or transform the data in the Salesforce
We have 4 kinds of dataraptors in Omnistudio based on their function:
When one needs to get data from one or more Salesforce objects at the same time , we use Extract as the interface type while creating a Data Raptor
When one needs to get data from a single Salesforce object we can use Turbo Extract as the interface type.
We can insert new Salesforce records and update the older one using Load interface. Load can be to DML operations.
We don’t bring any data from Salesforce nor do we insert or update data in the org using the Transform interface. This special type of Data Raptor is used to manipulate data Thus transform interface performs any changes in the data that has already been retrieved from the org or even any other data coming from outside Salesforce.
Let us learn about Turbo Extract DataRaptor in detail .
Go to omnistudio app————->From the drop down select dataraptors——->
Click on new from the type dropdown we can select the dataraptor we want to use. For now I will select Turbo Extract.
Give data raptor Name – DR_Turbo_Practice1
Click on Save.
Console for Turbo Extract will open:
Here we have 3 tabs:
Extract – Here we will give the fields which we want to retrieve for a particular object. Remember this type of dataraptor is used when we want to retrieve fields from only 1 object.
Options – We can check field level security here and set cache type.
Preview – Here we can preview the response from dataraptor after we are done configuring it. In input parameters you can pass different parameters and check response in the response area.
Let’s go back and configure our first dataraptor:
Select your object – Contact
In extract output path you will provide json node – contacts
In filter you can give various conditions to filter out your result
Here I will give – Id <> “$Vlocity.null” –> variables provided by omnistudio
from fields, select the fields you want to retrieve – FirstName, LastName
Go to preview and hit execute
You will see all the contacts under the node that we previously defined.In the debug log you can see the query it created to fetch the results By default a limit of 50000 is added.
You can go back and Add more conditions. You can apply limits, OR Conditions , AND Conditions, Offset or Order by .
You can also bring some fields from the parent record. In the Related Objects select Contact.Account. From the dropdown below you can select the fields.
Now let us see how we can pass parameters.
Delete all filters and give condition -> ID = recId.
In the input parameter, Click Edit as params.
Add a new pair. key —> recId Value –> Any record id of contact .
You can get recID from the url of the contact as given below:
Only 1 record will be returned.
You can also provide input parameter as json if you are good at it. You can use colon notation to pass it in the extract tab.
Thus DataRaptor Turbo Extracts are mostly used to retrieve single Salesforce Objects with no complex mappings . They are easier to configure and have lesser performance time.