Integration Procedures15% of the exam

Integration Procedure data flow and invocation

How an Integration Procedure builds its data JSON step by step, how later steps read earlier output with %ElementName:node% merge fields, and how Omniscripts, Flexcards, Flows, REST calls (GET or POST) and Apex (Type_SubType through the Connect API) invoke it.

Official exam objective
Design and configure server side processes to integrate and orchestrate data between systems.

~7 min read · 3 practice questions ·

What the exam expects

  • Trace how an Integration Procedure orchestrates Salesforce and external data in one server call, and predict the data JSON after each step.
  • Reference an earlier step's output in a later step with an %ElementName:node% merge field, inside literal text or a formula.
  • Invoke an Integration Procedure from an Omniscript, a Flexcard, a Flow, a REST call and Apex, and pick the right HTTP method for a request body.
  • Call it from Apex with the Connect API using the Type_SubType identifier, and know the Enhanced Runtime Performance prerequisite.

Exam scope: the exam guide says a Developer candidate is not expected to have LWC, Apex or Angular development experience. Know that Flows call a procedure through an Apex class with an @InvocableMethod method, that Apex uses the Connect API with Type_SubType, and what the call returns (response as a List<String>, a job Id under IPResult with useQueueable); writing the Apex class itself is code-level detail you can skip.

Key terms: data JSON (the shared JSON every step reads from and writes to), element name (the node a step's output is stored under), merge field (%Step:node% reference to a data JSON value), Type_SubType (the unique identifier used to call the procedure), Connect API (ConnectAPI.OmniDesignerConnect.integrationProcedureExecute, the Apex entry point).

Key facts

Where step output goes
Detail
Under a node named after the step's element name
Merge field syntax
Detail
%Element:node%, colons between levels
Calculations
Detail
Start with =, as in =%Inputs:GrossIncome% * 0.7
REST GET vs POST
Detail
GET can't pass data with a JSON request body
Flow caller
Detail
Apex class with @InvocableMethod
Apex identifier
Detail
Type_SubType, such as Auto_CreateUpdateQuote
Connect API prerequisite
Detail
Enhanced Runtime Performance enabled on Omnistudio Settings
Connect API output
Detail
response is a List<String>; deserialize entry 0, then read result
Batch Actions
Detail
Not supported on Standard Runtime
Sources for this section (5)
  • Why does %status:code% return nothing when an HTTP Action named PingCarrier produced the status?
  • When must a REST caller use POST rather than GET?
  • When does an Apex call to integrationProcedureExecute not route through the Connect API?
  • What identifier does Apex pass for Type orders and SubType syncStatus?

The questions are free to read. Answers with their sources and self-grading are included with the pack.

Keep reading with the Omnistudio Developer pack

  • Core concepts
  • Exam traps
  • Worked scenario

The pack includes:

  • All 46 lessons of the Omnistudio Developer guide, with reading progress
  • Interactive decision walks and step-by-step sequence steppers
  • Inline practice questions and one-click topic practice (3 questions for this lesson)
  • An official source cited for every claim
  • An AI tutor that answers from the guide
  • Unlimited timed practice exams

Practice for the Omnistudio Developer exam