OmniStudio Developer Mock Test

Salesforce Certified OmniStudio Developer — Free Practice Exam with Explanations

OmniStudio Developer 50 Questions Multiple Choice Answer Explanations Free

About This OmniStudio Developer Practice Test

These 50 original practice questions were written to mirror the way the Salesforce Certified OmniStudio Developer exam asks about building declarative, industry-style applications. You will work through OmniScript design and validation, FlexCard states and actions, the four Data Mapper types, server-side orchestration with Integration Procedures, embedding components on Lightning and external pages, and the tooling used to move OmniStudio metadata between orgs.

Every question includes a written explanation covering why the correct answer is right and why the distractors are not, so a wrong answer teaches you something rather than just costing a point. Questions are weighted to follow the published exam domain percentages, which means roughly a third of the test is OmniScripts.

Note: these are original practice questions written by the A2Z Salesforce team. They are not real Salesforce exam questions, and no exam content is reproduced here.

Last updated:

Official Exam Format

  • 60 Multiple Choice Questions
  • 65% Passing Score
  • 105 Minutes
  • Proctored / Online
  • No prerequisite certification

Domain Weighting

  • OmniScripts — 32%
  • FlexCards — 16%
  • Data Tools / Data Mappers — 16%
  • Integration Procedures — 16%
  • Web Page Integration — 12%
  • OmniStudio Tools — 8%
Progress: 0 / 50 answered Scroll down & click Submit when done

OmniStudio Developer Practice Questions

1
A developer needs to build a guided, multi-step customer onboarding process that collects data, validates it, and writes it back to Salesforce. Which OmniStudio component is designed for this?
Show explanation & topic

Correct answer: A. An OmniScript is the OmniStudio component built specifically for guided, multi-step user interactions. It renders a series of Steps containing input elements, applies validation, calls server-side actions, and can write results back to Salesforce.

Why the other options are wrong: A FlexCard is a read-oriented display component, not a data-entry wizard. A Data Mapper Load only writes data — it has no user interface. An Integration Procedure runs server-side with no UI at all.

Exam domain: OmniScripts

2
Inside an OmniScript, a developer wants a Step header to greet the user by the first name they typed into a Text element named FirstName. What is the correct way to reference that value in the header text?
Show explanation & topic

Correct answer: B. OmniScript merge fields are wrapped in percent signs — %FirstName% — and resolve against the element name in the OmniScript data JSON at runtime.

Why the other options are wrong: {!FirstName} is Visualforce/Flow merge syntax. $FirstName$ and [[FirstName]] are not recognised by the OmniScript runtime and would render as literal text.

Exam domain: OmniScripts

3
A developer finishes editing version 3 of an OmniScript in the designer and asks a colleague to test it from the Lightning page where version 2 is embedded. The colleague still sees the old behaviour. What is the most likely cause?
Show explanation & topic

Correct answer: C. OmniScripts follow a versioned activate/deactivate model. Only an activated version is served at runtime, and activating a new version deactivates the previously active one. A draft version is visible only in the designer preview.

Why the other options are wrong: OmniScripts are not compiled to Visualforce. They are fully supported on Lightning pages. A permissions problem would normally produce an error, not silently serve an older version.

Exam domain: OmniScripts

4
Which OmniScript element should a developer use to write a calculated or hard-coded value into the OmniScript data JSON without showing an input field to the user?
Show explanation & topic

Correct answer: D. The Set Values element assigns values to one or more JSON nodes at runtime using its element value map. It has no visible input, so it is the standard way to stage derived or constant data for later actions.

Why the other options are wrong: A Text Block only displays static content. There is no OmniScript element called Formula Field. An Edit Block groups editable input elements for the user.

Exam domain: OmniScripts

5
A quoting OmniScript must show an extra Step only when the user selects 'Business' on a Radio element named AccountType. Which approach follows OmniStudio best practice?
Show explanation & topic

Correct answer: A. Conditional views are the declarative mechanism for showing or hiding OmniScript elements — including Steps — based on data already captured in the data JSON. The condition is re-evaluated as the user moves through the script.

Why the other options are wrong: Splitting into two OmniScripts duplicates maintenance for a single branch. CSS hiding leaves the element active and its data still collected and validated. There is no supported way to delete elements at runtime from an action.

Exam domain: OmniScripts

6
An OmniScript Step needs to display a contact's mailing address, phone, and email, read from a single Contact record, with no formulas or related objects involved. Which server-side call gives the best performance?
Show explanation & topic

Correct answer: B. A Turbo Extract targets a single sObject and bypasses the heavier processing of a standard Extract, which makes it the fastest option when no formulas, multi-object joins, or complex output restructuring are required.

Why the other options are wrong: A standard Extract works but carries unnecessary overhead here. An HTTP Action adds a network round trip to retrieve data that is already in the org. A Remote Action introduces custom Apex to maintain for something fully declarative.

Exam domain: OmniScripts

7
Which data sources can supply the suggestion list behind a Type Ahead Block in an OmniScript?
Show explanation & topic

Correct answer: C. A Type Ahead Block is configured against a server-side data source — typically a Data Mapper (often a Turbo Extract for speed) or an Integration Procedure, which can in turn aggregate several sources.

Why the other options are wrong: Static picklists belong on Select or Radio elements. The element does not accept raw SOQL inline, and it is not limited to external endpoints.

Exam domain: OmniScripts

8
A developer has built an address-capture sequence used identically in four different OmniScripts. What is the recommended way to avoid rebuilding it each time?
Show explanation & topic

Correct answer: D. An OmniScript flagged as reusable can be embedded inside other OmniScripts through the OmniScript element. The sequence is then maintained once, and every parent picks up the change on redeploy.

Why the other options are wrong: Copy and paste creates four copies to keep in sync. FlexCards display data rather than host a validated input sequence. A Data Mapper Transform only reshapes JSON and holds no UI.

Exam domain: OmniScripts

9
A long claims OmniScript must let users leave partway through and resume later from the same point. What must the developer do?
Show explanation & topic

Correct answer: A. Save For Later is an OmniScript-level setting that persists the in-progress data JSON so the user can return and continue. Without it, progress is held only for the life of the session.

Why the other options are wrong: Persistence is opt-in, not automatic. Saving on every keystroke would be an expensive custom workaround for a supported feature. Chainable is an Integration Procedure concept, not an OmniScript type.

Exam domain: OmniScripts

10
A user must be able to add an unknown number of dependants, each with a name and date of birth, on one Step. Which configuration handles this?
Show explanation & topic

Correct answer: B. A repeatable Block lets the user add and remove instances at runtime, and stores the results as an array node in the data JSON — which downstream Data Mappers and Integration Procedures can iterate over.

Why the other options are wrong: Pre-building hidden pairs imposes an arbitrary ceiling and bloats the script. Set Values assigns data, it does not collect it. One OmniScript per dependant breaks the single-transaction flow.

Exam domain: OmniScripts

11
What is the purpose of a Navigate Action in an OmniScript?
Show explanation & topic

Correct answer: C. A Navigate Action sends the user to a configured destination when it fires — commonly another OmniScript, a record detail page, or a custom component — and can pass context parameters along.

Why the other options are wrong: Movement between Steps is handled by the built-in Next and Previous controls. It is not an anchor-scroll utility, and JSON traversal is done with JSON paths in element configuration.

Exam domain: OmniScripts

12
How can a developer enforce that a Text element accepts only a value matching a specific format, and show a tailored message when it does not?
Show explanation & topic

Correct answer: D. Text elements support client-side pattern validation with a developer-supplied error message, so the user is corrected immediately rather than after a server round trip.

Why the other options are wrong: A Data Mapper Load validates only at save time, after the user has moved on. There is no trigger context for in-flight OmniScript input. Try-Catch blocks belong to Integration Procedures.

Exam domain: OmniScripts

13
An OmniScript must, on its final Step, create an Account, create a related Contact, and send a confirmation email in one server call. Which action is the most appropriate?
Show explanation & topic

Correct answer: A. Delegating the work to a single Integration Procedure keeps the multi-step logic server-side, executes it in one round trip, and lets the developer add shared error handling — the recommended pattern for composite save operations.

Why the other options are wrong: Three separate Load Actions mean three round trips and no shared error handling. Repeated HTTP Actions to the org's own API add latency and authentication overhead. Set Values only writes to the data JSON.

Exam domain: OmniScripts

14
After adding a Data Mapper Extract Action, a developer finds that %AccountName% renders blank on the next Step even though the Data Mapper preview returns the field correctly. What should be checked first?
Show explanation & topic

Correct answer: B. The most common cause is a path mismatch: the Data Mapper writes the value into a nested node, while the merge field references it as a top-level name. Comparing the action's response JSON to the merge field path resolves it.

Why the other options are wrong: The LWC setting affects rendering technology, not JSON paths. A permissions problem would usually surface as an action error, not an empty merge field. Merge resolution happens in the OmniScript runtime, not the browser's HTML parser.

Exam domain: OmniScripts

15
What does the Step element contribute to an OmniScript?
Show explanation & topic

Correct answer: C. A Step is the unit of navigation: it groups elements into a single screen, appears in the progress chevron, can be shown or hidden conditionally, and blocks Next until its required elements validate.

Why the other options are wrong: Steps do not create server transactions — actions do. Compilation is a separate activation-time process. Steps are required for every OmniScript, on or off platform.

Exam domain: OmniScripts

16
A developer notices that the same Data Mapper Extract Action is re-fetching identical reference data every time the user navigates back and forth between Steps. Which element setting addresses this most directly?
Show explanation & topic

Correct answer: D. Caching the action's input means a repeated call with the same inputs is served from cache instead of hitting the server again, which is the standard remedy for redundant reference-data lookups in a navigable script.

Why the other options are wrong: Fire and Forget suppresses the response, which is wrong when the data is needed. A repeatable Block would multiply the calls. An HTTP Action does not reduce the number of calls.

Exam domain: OmniScripts

17
How does the FlexCard runtime decide which state to render?
Show explanation & topic

Correct answer: A. FlexCard states are evaluated in sequence against the card's data. The first state whose condition evaluates true is rendered; if none match, the default state is used. Ordering the states therefore controls precedence.

Why the other options are wrong: States are mutually exclusive at render time, not stacked. Element count and user selection play no part in state resolution.

Exam domain: FlexCards

18
Which of the following can be configured as the data source of a FlexCard?
Show explanation & topic

Correct answer: B. The FlexCard designer exposes several data source types — Data Mapper, Integration Procedure, Apex remote class, SOQL, SOSL, REST, and custom — so the same display component can be bound to on-platform or external data.

Why the other options are wrong: Restricting the answer to a single source type understates the designer's options. Parent-supplied data is one input among several, not the only one.

Exam domain: FlexCards

19
What happens when a FlexCard is activated?
Show explanation & topic

Correct answer: C. Activation compiles the FlexCard definition into a Lightning web component and registers it so it becomes available as a target in Lightning App Builder, Experience Builder, and other FlexCards or OmniScripts.

Why the other options are wrong: FlexCards compile to LWC, not Aura. They are not exported to static HTML by activation, and activation does far more than lock editing.

Exam domain: FlexCards

20
A FlexCard listing open cases should let a user open a detail view in an overlay without leaving the current page. Which action type fits?
Show explanation & topic

Correct answer: D. A Flyout renders a child FlexCard or an OmniScript in an overlay or inline region while the parent card stays on screen — exactly the in-place drill-down described.

Why the other options are wrong: A Navigate action takes the user away from the page. Update and Delete act on records and do not present a detail view.

Exam domain: FlexCards

21
A FlexCard placed on a Lightning record page needs to load data for the record currently being viewed. How is that record's Id made available to the card's data source?
Show explanation & topic

Correct answer: A. When a FlexCard is placed on a record page, the page supplies the record Id as context. The developer maps it into the data source input with a merge field so the Data Mapper or Integration Procedure filters on the right record.

Why the other options are wrong: There is no implicit 'most recent record' behaviour. Hard-coding an Id would break the card for every other record. URL parameters are one possible source, not the only one.

Exam domain: FlexCards

22
After an OmniScript embedded in a Flyout updates a record, the parent FlexCard still shows stale values. Which mechanism is designed to refresh it?
Show explanation & topic

Correct answer: B. FlexCards support a publish/subscribe event model. Having the child publish an event that the parent card listens for lets the card re-run its data source and re-render without a full page reload.

Why the other options are wrong: A full page reload works but discards user context and is a poor experience. Changing the data source type does not affect refresh timing. Disabling cache does not by itself trigger a re-fetch.

Exam domain: FlexCards

23
A FlexCard must display one block per open order returned by its data source, with the number of orders unknown in advance. What should the developer configure?
Show explanation & topic

Correct answer: C. Marking the card repeatable and pointing it at the list node causes the runtime to render one card instance per item in the array, which is the supported pattern for variable-length collections.

Why the other options are wrong: Creating a state per count is unmaintainable. Flattening to a string loses structure and interactivity. Loop Blocks are Integration Procedure elements, not FlexCard elements.

Exam domain: FlexCards

24
A FlexCard showing a product reference table loads slowly, and the underlying data changes only a few times a day. Which two adjustments best address the latency?
Show explanation & topic

Correct answer: D. A Turbo Extract removes processing overhead for simple single-object reads, and caching avoids repeating the call for data that is effectively static within the caching window — together they target the actual cost.

Why the other options are wrong: Extra states do not reduce the server call. An OmniScript is a different component type and would not be faster. Repositioning the card changes perceived order, not load time.

Exam domain: FlexCards

25
Which set correctly lists the Data Mapper (DataRaptor) types available in OmniStudio?
Show explanation & topic

Correct answer: A. OmniStudio provides four Data Mapper types: Extract and Turbo Extract read Salesforce data, Transform reshapes JSON without touching the database, and Load writes data back to Salesforce.

Why the other options are wrong: The other groupings describe generic CRUD or invented categories and do not correspond to OmniStudio Data Mapper types.

Exam domain: Data Mappers (DataRaptors)

26
Which statement about a Turbo Extract is correct?
Show explanation & topic

Correct answer: B. Turbo Extract is deliberately narrow: one sObject, no formula processing, minimal output restructuring. That restriction is what makes it noticeably faster than a standard Extract.

Why the other options are wrong: Multi-object retrieval requires a standard Extract. Writing is the Load type's job. Field-level security handling is not unique to Turbo Extract.

Exam domain: Data Mappers (DataRaptors)

27
An Integration Procedure receives a JSON payload from an external system and must reshape it into the structure an OmniScript expects, without reading or writing any Salesforce records. Which Data Mapper type applies?
Show explanation & topic

Correct answer: C. A Transform takes an input JSON structure and maps it to a different output structure — renaming nodes, changing nesting, applying formulas — with no database interaction at all.

Why the other options are wrong: Extract and Turbo Extract both read Salesforce data. Load writes to Salesforce. Neither is needed for a pure JSON-to-JSON reshape.

Exam domain: Data Mappers (DataRaptors)

28
A Data Mapper Load must create an Account and one or more child Contacts in the same call, with each Contact correctly related to the new Account. How is the relationship established?
Show explanation & topic

Correct answer: D. A Load definition supports linking a child object's lookup field to a parent created in an earlier step of the same definition, so the runtime resolves the new parent Id and stamps it on the children.

Why the other options are wrong: Two separate Data Mappers add a round trip and manual Id plumbing. A post-insert automation is unnecessary. Load definitely supports related-record creation.

Exam domain: Data Mappers (DataRaptors)

29
In which Data Mapper types can a developer use formula functions to derive an output value?
Show explanation & topic

Correct answer: A. Formula support is available in Extract, Transform, and Load definitions, allowing derived values such as concatenations, conditionals, and date arithmetic to be produced inside the Data Mapper.

Why the other options are wrong: Turbo Extract is the type that omits formula support. Restricting formulas to Transform, or to Integration Procedures, understates where they are available.

Exam domain: Data Mappers (DataRaptors)

30
A Data Mapper Extract retrieves Account.Name but the consuming OmniScript expects the value at a node called customerName. Where is this renaming best handled?
Show explanation & topic

Correct answer: B. Data Mapper Extract definitions map each source field to an output JSON path. Setting that path to customerName produces the expected structure directly and keeps the contract in one place.

Why the other options are wrong: A Set Values workaround duplicates logic in every consumer. Renaming a standard field is not possible and would affect the whole org. A formula field adds unnecessary metadata for a presentation concern.

Exam domain: Data Mappers (DataRaptors)

31
What should a developer verify when a Data Mapper Extract returns fewer fields for an integration user than it does in the developer's own preview?
Show explanation & topic

Correct answer: C. Data Mapper reads run in the context of the calling user, so fields the user cannot see are omitted. Differences between two users almost always trace back to object permissions and field-level security.

Why the other options are wrong: Data Mappers are not gated by an activation step in the way OmniScripts are. A Transform cannot read records at all. The OmniScript version does not change which fields a user can see.

Exam domain: Data Mappers (DataRaptors)

32
A developer needs opportunity data along with its related OpportunityLineItems and a computed total, returned as nested JSON. Which Data Mapper type should be used?
Show explanation & topic

Correct answer: D. A standard Extract can define multiple extract steps across related objects, nest the results, and apply a formula to compute the total — none of which Turbo Extract supports.

Why the other options are wrong: Turbo Extract is single-object and formula-free. Load writes rather than reads. Transform has no ability to query Salesforce data in the first place.

Exam domain: Data Mappers (DataRaptors)

33
What is the primary architectural benefit of moving a sequence of Data Mapper calls out of an OmniScript and into an Integration Procedure?
Show explanation & topic

Correct answer: A. Integration Procedures run entirely on the server. Consolidating several actions into one call cuts network round trips, which is the main performance lever available to OmniStudio developers.

Why the other options are wrong: Step count is a UI design choice. Activation is still required for the OmniScript. Nothing about Integration Procedures elevates a user's field access.

Exam domain: Integration Procedures

34
Which Integration Procedure element determines what is returned to the calling OmniScript or FlexCard?
Show explanation & topic

Correct answer: B. The Response Action defines the payload sent back to the caller, letting the developer return a trimmed, purpose-built structure rather than every intermediate node the procedure produced.

Why the other options are wrong: Set Values stages data internally. A Remote Action calls Apex. A Cache Block stores results for reuse; it does not shape the response.

Exam domain: Integration Procedures

35
An Integration Procedure calls an unreliable external service. The developer wants a controlled fallback rather than a raw failure surfacing to the user. Which element should be used?
Show explanation & topic

Correct answer: C. A Try-Catch Block lets the developer wrap the risky call and define what happens when it fails — returning a default payload, logging, or raising a friendly message — instead of letting the error propagate.

Why the other options are wrong: A Loop Block iterates over collections. A Cache Block stores results. An Assert element checks a condition and stops execution rather than recovering from failure.

Exam domain: Integration Procedures

36
A reference lookup inside an Integration Procedure returns data that changes at most once a day but is called on every page load. Which element reduces the repeated cost?
Show explanation & topic

Correct answer: D. A Cache Block stores the result of the elements it contains for a configured duration and scope, so subsequent executions reuse the stored value instead of repeating the underlying work.

Why the other options are wrong: Loop, Try-Catch, and Response Actions serve iteration, error handling, and output shaping respectively — none of them avoids the repeat call.

Exam domain: Integration Procedures

37
An Integration Procedure receives a list of ten order line items and must call the same pricing action once per item. Which element handles this?
Show explanation & topic

Correct answer: A. A Loop Block iterates over a list node and executes its child elements once per item, which is exactly the per-item action invocation described.

Why the other options are wrong: A Matrix Action reads a calculation matrix. A List Action manipulates list structures rather than driving repeated child execution. Chainable relates to returning results incrementally.

Exam domain: Integration Procedures

38
What does enabling Chainable on an Integration Procedure allow?
Show explanation & topic

Correct answer: B. Chainable execution breaks the work into linked transactions so partial results can be returned as they become available, which keeps long-running procedures responsive and reduces the risk of hitting per-transaction limits.

Why the other options are wrong: It is not a mechanism for unbounded recursion, it does not restrict who may call the procedure, and no OmniStudio setting removes platform governor limits.

Exam domain: Integration Procedures

39
How can a developer make one element inside an Integration Procedure run only when a previously retrieved value meets a condition?
Show explanation & topic

Correct answer: C. Each Integration Procedure element accepts an execution conditional formula. When the formula evaluates false the element is skipped, which is the declarative way to branch server-side logic.

Why the other options are wrong: Try-Catch handles errors, not conditions. Cache Blocks control reuse. Navigate Actions are OmniScript UI elements and cannot branch server-side execution.

Exam domain: Integration Procedures

40
An OmniScript must trigger an audit-logging Integration Procedure but should not wait for its result before advancing the user. Which action configuration fits?
Show explanation & topic

Correct answer: D. Configuring the call as non-blocking — fire and forget — dispatches the request and lets the OmniScript continue immediately, which is appropriate when the caller has no use for the response.

Why the other options are wrong: Chainable still returns results to the caller. A Cache Block does not change blocking behaviour. Clearing a JSON path does not stop the client from waiting.

Exam domain: Integration Procedures

41
What is OmniOut used for?
Show explanation & topic

Correct answer: A. OmniOut packages LWC-based OmniScripts and FlexCards so they can be built and hosted on a non-Salesforce web server while still communicating with the Salesforce org for data.

Why the other options are wrong: Data Mapper export and org-to-org migration are handled by DataPacks and IDX tooling. PDF generation is a separate document-generation capability.

Exam domain: Web Page Integration

42
Which prerequisites must be in place before an OmniScript can be deployed through OmniOut?
Show explanation & topic

Correct answer: B. OmniOut only supports the LWC runtime, the component must be activated to be packaged, and because the hosting domain is external, cross-origin access to the Salesforce org has to be explicitly authorised.

Why the other options are wrong: There is no Visualforce conversion involved. Reusability is unrelated to off-platform hosting. Data Mappers continue to work through the authenticated connection.

Exam domain: Web Page Integration

43
How does an administrator place an activated OmniScript on a Lightning record page?
Show explanation & topic

Correct answer: C. Lightning App Builder exposes a component for embedding OmniScripts. The administrator identifies the target script through its type, sub-type, and language, and the active version is served at runtime.

Why the other options are wrong: There is no XML-paste mechanism. An iframe wrapper is unnecessary and loses page context. Lightning pages are configured declaratively, not by hand-editing Aura markup.

Exam domain: Web Page Integration

44
A FlexCard needs to appear on an authenticated Experience Cloud site. What is the appropriate approach?
Show explanation & topic

Correct answer: D. Activated FlexCards are available as components in Experience Builder. Because the site runs under its own user context, the developer must also confirm the relevant profile can read the objects and fields the card's data source touches.

Why the other options are wrong: Rebuilding as static HTML loses the data binding. OmniOut targets non-Salesforce hosts and is unnecessary here. A public REST endpoint would bypass the platform's sharing model.

Exam domain: Web Page Integration

45
When would a developer choose the Newport design system over the Salesforce Lightning Design System for an OmniStudio component?
Show explanation & topic

Correct answer: A. Newport is the design system intended for customer-facing, externally styled experiences where inheriting Lightning Experience's look is undesirable. Inside Lightning Experience, SLDS is the natural choice.

Why the other options are wrong: Repeatable blocks and data source type are functional concerns and have no bearing on which design system is applied.

Exam domain: Web Page Integration

46
An OmniScript embedded on an Account record page must pre-fill fields from that Account. How is the record context supplied?
Show explanation & topic

Correct answer: B. An OmniScript placed on a record page receives that record's Id as context. Mapping it into the Data Mapper Extract input lets the script seed itself with the correct record's data.

Why the other options are wrong: There is no automatic last-viewed-record behaviour. A hard-coded Id breaks the page for every other record. URL parameters are one possible source but not the mechanism used on a record page.

Exam domain: Web Page Integration

47
Which tool is designed to migrate OmniStudio components such as OmniScripts, FlexCards, and Data Mappers between Salesforce orgs?
Show explanation & topic

Correct answer: C. IDX Workbench is the desktop tool provided for moving OmniStudio metadata between orgs and between an org and a source-control repository, with a companion build tool for automated pipelines.

Why the other options are wrong: Data Loader moves record data, Schema Builder visualises the data model, and Setup Audit Trail records configuration changes — none migrate OmniStudio components.

Exam domain: OmniStudio Tools

48
What is a DataPack in the OmniStudio context?
Show explanation & topic

Correct answer: D. DataPacks serialise OmniStudio component definitions — and their dependencies — into a portable form that can be exported from one org and imported into another, typically through IDX tooling.

Why the other options are wrong: DataPacks are not a licensing construct, a cache partition, or a sample data set.

Exam domain: OmniStudio Tools

49
Which statement about OmniStudio Standard Runtime is accurate?
Show explanation & topic

Correct answer: A. Standard Runtime executes OmniStudio components against native platform metadata instead of the managed package's custom objects, which brings OmniStudio closer to core platform tooling.

Why the other options are wrong: The point of Standard Runtime is to move away from managed-package dependency. It is not FlexCard-only, and versioning behaviour is retained.

Exam domain: OmniStudio Tools

50
A developer deploys an OmniScript and its supporting Integration Procedure to a UAT org, but the script errors when the action fires. Everything works in the source org. What is the most likely oversight?
Show explanation & topic

Correct answer: B. Integration Procedures, like OmniScripts and FlexCards, must be activated in the target org before the runtime will serve them. Deployment alone leaves the component inactive, so calls to it fail.

Why the other options are wrong: Components are deployable and do not need rebuilding. Integration Procedures migrate normally. Licensing is not granted per Data Mapper.

Exam domain: OmniStudio Tools

Answered 0 of 50 questions. You can submit at any time.

0%
0
Correct
0
Incorrect
0
Unanswered
All Developer Tests →

How to Study for the OmniStudio Developer Exam

Build, don't just read

OmniStudio questions tend to describe a requirement and ask which component or setting satisfies it. That is hard to answer from notes alone. Build a small end-to-end flow in a developer org — a FlexCard that launches an OmniScript, an OmniScript that reads with a Data Mapper Extract and saves through an Integration Procedure — and the distinctions between the components stop being abstract.

Know where each type of logic belongs

A recurring theme in the exam is choosing the right home for a piece of logic: a conditional view versus a branch, a Turbo Extract versus a full Extract, a chain of client-side actions versus one Integration Procedure. Whenever you learn a new element, note what it is cheaper or safer than, and under what conditions.

Practise the activation and migration lifecycle

Several scenario questions hinge on versioning and activation, or on what has to travel with a component when it moves to another org. Deploy a component with IDX Workbench at least once so the dependency and activation steps are familiar rather than theoretical.