Last Updated On : 20-Sep-2026


Salesforce Certified OmniStudio Developer - Plat-Dev-210 Practice Test

Prepare with our free Salesforce Certified OmniStudio Developer - Plat-Dev-210 sample questions and pass with confidence. Our OmniStudio-Developer practice test is designed to help you succeed on exam day.

173 Questions
Salesforce 2026

The phone number of a Contact is changed in an OmniScript. What should an OmniStudio Developer configure to update the Contact record in Salesforce?

A. A Data Mapper Extract that includes the RecordId, the upsert key selected, and the new phone number

B. A Data Mapper Transform that maps the new phone number to the old Phone Number field

C. A Data Mapper Transform that includes the previous phone number with the upsert key selected and the new phone number

D. A Data Mapper Load that includes the RecordId, the upsert key selected, and the new phone number

D.   A Data Mapper Load that includes the RecordId, the upsert key selected, and the new phone number

Explanation:

This question tests how to configure OmniScript data actions to update Salesforce records. When a Contact’s phone number is changed, the developer must use a write action that includes the Contact’s RecordId (Id), the upsert key (typically Id), and the new phone number to perform the update.

Correct Option:

✔️ D: A Data Mapper Load that includes the RecordId, the upsert key selected, and the new phone number
To update a Contact record in Salesforce from an OmniScript, you use a Data Mapper Load action configured for the Contact object. The Load action must include the Contact’s RecordId (Id field), the upsert key (set to Id so Salesforce knows which record to update), and the new Phone value. This combination ensures that the existing Contact record is updated with the new phone number instead of creating a new record.

Incorrect Options:

❌ A: A Data Mapper Extract that includes the RecordId, the upsert key selected, and the new phone number
A Data Mapper Extract is used to read data from Salesforce or external sources, not to write or update records. It cannot change the phone number on a Contact. Including the new phone number and upsert key in an Extract does not make it a write operation.

❌ B: A Data Mapper Transform that maps the new phone number to the old Phone Number field
A Data Mapper Transform reshapes or transforms JSON data within the OmniScript flow but does not write data back to Salesforce. It cannot update the Contact record; it only changes the structure or values of the internal data payload.

❌ C: A Data Mapper Transform that includes the previous phone number with the upsert key selected and the new phone number
As with option B, a Transform action only manipulates data in the process flow and does not perform write operations to Salesforce. Adding the previous phone number and upsert key does not make it a write action; it still cannot update the Contact record.

🔧 Reference:
Salesforce Help: Create and Update Data from Omniscripts
Confirms that to write data to Salesforce objects, you use a Data Mapper Post Action (commonly referred to as Data Mapper Load) and that you must include the RecordId and upsert key to update existing records.

→ Salesforce Help: Omnistudio Data Mappers
Describes that Data Mapper Load actions are used to create or update records in Salesforce, mapping fields such as Id (RecordId) and Phone from the OmniScript data JSON to the Contact object.

When designing an OmniScript for a business process, what is best practice regarding the placement of data actions, for example Data Mapper Extracts, that retrieve data necessary for a step?

A. Place all data actions in the OmniScript ' s Header.

B. Place the data action on the same step to ensure the data is loaded before it is displayed.

C. Place the data action in the step immediately following the data usage.

D. Place the data action in a Set Values element.

B.   Place the data action on the same step to ensure the data is loaded before it is displayed.

Explanation:

This question tests the developer's understanding of OmniScript design best practices regarding the execution order of UI steps and data retrieval actions. To provide a seamless user experience without blank fields or layout shifts, data must be fetched before the user views the screen.

✅ Correct Option:

B. Place the data action on the same step to ensure the data is loaded before it is displayed.
In OmniScript, the standard best practice is to position your Data Action (such as a Data Mapper Extract or Integration Procedure) before or at the very beginning of the step that requires that data. This ensures that the necessary payload is retrieved and populated into the OmniScript's data JSON so that the input fields and formulas on that step render with their correct values immediately upon loading.

❌ Incorrect options:

A. Place all data actions in the OmniScript ' s Header.
OmniScript does not have a "Header" section for canvas actions. While you can prefill data at the very beginning of the entire OmniScript, putting every single data action at the start is inefficient and increases the initial load time of the transaction.

C. Place the data action in the step immediately following the data usage.
Placing a data action after the step where it is used is logically incorrect. The UI elements on the previous step would have no data to display, resulting in empty fields or errors for the user.

D. Place the data action in a Set Values element.
A Set Values element is used strictly for handling local variable assignments, calculations, or hardcoding values. It does not have the capability to invoke or execute Data Mapper Extracts or other external data actions.

🔧 Reference:
Salesforce Help: OmniScript Best Practices - Highlights optimal placement of actions, advising developers to fetch data immediately before the step where it is needed to maximize client-side performance.

An OmniStudio Developer is troubleshooting an Integration Procedure with two elements: a Remote Action named FetchCart and a Response Action named ResponseCart.

In Preview, which JSON node shows the data sent to the Remote Action?

A. ResponseCart

B. FetchCartDebug

C. FetchCart

D. ResponseCartDebug

C.   FetchCart

Explanation:

This question tests your understanding of the Integration Procedure Preview feature. During preview, each executed element creates a corresponding JSON node that contains its input and output data, making it easier to inspect the information passed between actions for troubleshooting and validation.

🟢 Correct Option:

C. FetchCart:
In the Integration Procedure Preview, each element generates a JSON node using its element name. Since the Remote Action is named FetchCart, the data sent to and returned from that action is available under the FetchCart node. This allows developers to inspect the request and response while debugging the Integration Procedure.

🔴 Incorrect Options:

A. ResponseCart:
The ResponseCart node represents the output generated by the Response Action. It contains the final data returned by the Integration Procedure rather than the information passed into the Remote Action. Therefore, it is not the correct location for inspecting the Remote Action's input data.

B. FetchCartDebug:
Integration Procedure Preview does not automatically create a separate node with a Debug suffix. The Preview JSON uses the configured element names directly. As a result, a node named FetchCartDebug is not generated for inspecting the Remote Action's execution.

D. ResponseCartDebug:
A node named ResponseCartDebug is not created by the Integration Procedure Preview. Debug information is displayed within the existing element nodes rather than separate debug nodes. Therefore, this option does not represent where the Remote Action's data can be viewed.

🔧 Reference:
⇒ Salesforce Help – Integration Procedure Preview
Explains how the Preview tool displays execution data for each Integration Procedure element using its configured element name.

An OmniStudio Developer at Coral Cloud Resorts needs to modify an existing OmniScript. The script currently displays customer data, but a new requirement states that if the customer is a " VIP member " , a special offers section must appear. The data identifying a VIP member exists within the OmniScript ' s data JSON. The developer must choose between using an Integration Procedure to return different UI metadata or using a client-side OmniScript feature. Given the requirement to make this change efficiently without serverside processing, which approach should the developer take?

A. Use a Data Mapper Transform to change the data structure.

B. Use the Conditional View property on the special offers element.

C. Use an Integration Procedure to conditionally add a metadata flag.

D. Use a new version of the OmniScript.

B.   Use the Conditional View property on the special offers element.

Explanation:

This question tests the developer's understanding of how to show or hide UI elements dynamically inside an OmniScript using client-side execution logic. It focuses on choosing the most efficient design approach that minimizes server calls when data is already loaded in the environment.

✅ Correct Option:

B. Use a Conditional View property on the special offers element.
Because the VIP member flag already exists within the OmniScript's current data JSON, configuring the **Conditional View** property on the special offers element (or step/block) is the most efficient approach. The evaluation of whether to show or hide the section is performed directly on the client side in the user's browser, eliminating the need for any unnecessary server-side processing.

❌ Incorrect options:

A. Use a Data Mapper Transform to change the data structure.
A Data Mapper Transform is used to restructure, reformat, or translate JSON payloads, but it requires a server-side transaction. It is unnecessary here since no structural JSON change is needed to show or hide the visual element.

C. Use an Integration Procedure to conditionally add a metadata flag.
Using an Integration Procedure introduces an extra server call to process the data. Since the VIP member flag is already available locally in the OmniScript's data JSON, this approach is highly inefficient and violates the requirement to avoid server-side processing.

D. Use a new version of the OmniScript.
Creating a new version of the OmniScript does not address the functional requirement of conditionally displaying elements based on dynamic run-time data.

🔧 Reference:
→ Salesforce Help: Define Execution Logic Using Conditional Blocks- Explains how to use the Conditional View property to display or hide OmniScript elements based on client-side JSON values.

An OmniStudio Developer is reviewing an Integration Procedure that is caching data. The Integration Procedure uses a Contextual Cache Key of AccountId. A call to the Integration Procedure with AccountId = ' 001A ' retrieves the cached data. If a subsequent call is made with AccountId = ' 001B ' , what is the expected caching behavior?

A. The cache for 001A will be cleared.

B. The Integration Procedure will fail because only one contextual key is supported.

C. The cached data for 001A will be returned.

D. The Integration Procedure will execute its actions and create a new cache entry for 001B.

D.   The Integration Procedure will execute its actions and create a new cache entry for 001B.

Explanation:

This question tests the understanding of how contextual caching works in Integration Procedures. When a contextual cache key is configured, each unique key value creates its own separate cache entry. The cache is not shared across different key values; instead, each distinct key generates and maintains its own cached data .

✔️ Correct Option:

Option D:
With a contextual cache key of AccountId, the cache is partitioned by the specific AccountId value. Since 001B is different from 001A, it represents a unique cache context. Therefore, the Integration Procedure will execute its actions to fetch data for 001B and create a new, separate cache entry for that AccountId .

❌ Incorrect options:

Option A:
The cache for 001A is not cleared when a new AccountId is requested. Each contextual key maintains its own independent cache entry .

Option B:
Integration Procedures can handle multiple contextual keys. The cache is partitioned by the key value, so having different AccountId values is supported and expected behavior .

Option C:
Cached data for 001A would only be returned if the same AccountId is requested again. A different AccountId triggers a new execution and cache creation .

🔧 Reference:
→ Salesforce Help: Integration Procedure Cache Settings - Explains how contextual cache keys create separate cache entries for each unique key value.

→ Trailhead: Use Integration Procedure Cache to Improve Performance - Covers how caching works with contextual keys and that different key values result in separate cache entries.

OmniStudio-Developer Exam Questions - Home Previous
Page 5 out of 35 Pages