Skip to main content

Explore the Integration Procedure Designer

Learning Objectives

After completing this unit, you’ll be able to:

  • Explain what the Integration Procedure Designer is.
  • Describe how to work with Group and Action elements.

Meet the Integration Procedure Designer

The OmniStudio Integration Procedure Designer allows you to quickly configure your Integration Procedure by dragging different elements into the Structure panel and configuring the properties for that element on the same screen. (We told you it was efficient!)

Let’s take a look at the Integration Procedure Designer features. Drumroll, please… presenting panels and panes. 

Note

The steps in this module are for demonstration purposes only. OmniStudio is not enabled in Trailhead Playground orgs.

Available Components Panel

The Available Components panel contains Groups and Actions elements.

The Available Components panel

Structure Panel

Drag and drop elements from the Available Components panel to the Structure panel.

The Structure panel

Element Properties Pane

Each element has a Properties pane with a link to edit the JavaScript object notation (JSON) of each element.

The Properties pane and the Edit as JSON feature

Preview Pane

The Preview pane allows you to input parameters and execute the Integration Procedure to confirm it has been configured correctly. You can use the Errors/Debug Output to troubleshoot.

The Preview pane

Integration Procedure Elements

You might be familiar with using elements in OmniScripts and OmniStudio FlexCards. Integration Procedure elements are a little different. They work behind the scenes—there are no elements for user interaction.

Let’s see what they do instead. Integration Procedure elements are either Groups or Actions. 

Groups

Integration Procedures allow you to group related steps as a unit inside a block. Integration Procedures provide the following block types.

What It Is

What It Does

Examples

Cache Block 

  • Saves the output of the steps within it to a session or org cache for quick retrieval
  • Stores frequently accessed and infrequently updated data, which saves round trips to the database and improves performance
  • Allows data updates without caching
  • Allows different cached data to expire at different times

An Integration Procedure caches weekly sales numbers but does not cache stock prices.

Conditional Block (This is the most basic block type.)

  • Executes if a specified condition is true or treats the steps within it as a series of mutually exclusive alternatives
  • Supports branching workflows, which function like conditional views in an OmniScript

Based on a price and a state code, an Integration Procedure calculates the sales tax and reports the total price. 

Loop Block

  • Iterates over the items in a data array, enabling the Actions within it to repeat for each item rather than requiring separate Action elements for each item

In a scenario where a user is adding products to a cart, one Remote Action within a Loop Block can add all four products. Without a Loop Block, adding four products to a cart would require running four separate Remote Actions.

Try-Catch Block

  • Lets you “try” running the steps inside the block and then “catch” the error if a step fails
  • Returns specified output or calls an Apex class if a step within it fails

An Integration Procedure creates and deletes a Contact with a specified LastName and returns an error message if the LastName field is blank.

Integration Procedure Groups elements

You can nest blocks within other blocks. For example, you can nest a Loop Block within a Try Catch Block or a Cache Block.

All blocks have one property in common—an Execution Conditional Formula

  • If this formula evaluates to true or is not defined, the block is executed.
  • If it evaluates to false, the block is skipped.

Actions

Next, let’s see what Action elements are all about.

Action elements are essential building blocks of every Integration Procedure. These actions can set data values, perform functions, call Data Mappers, invoke Apex classes, send emails, invoke REST endpoints, run other Integration Procedures, and more.

You can also use blocks to group actions for conditional execution, caching, list processing, and error handling. To add an action, drag it from the palette (shown below) into the Integration Procedure Structure panel.

Integration Procedure Action elements

The data source determines which element you use, and you should always use a Response Action at the end if needed. The Response Action element tells the Integration Procedure what data to pass back to the tool that called it. 

In the following example, the Response Action limits what is sent back, only sending what is in the Data Mapper Transform Action’s node.

The Response Action only sends what is in the Data Mapper Transform Action’s node

Now that you’ve learned the ins and outs of the Integration Procedure Designer, we think you’re ready to see it in action and walk through the design process. Get excited! We’ve got some great scenarios to show you in the next unit. 

Keep learning for
free!
Sign up for an account to continue.
What’s in it for you?
  • Get personalized recommendations for your career goals
  • Practice your skills with hands-on challenges and quizzes
  • Track and share your progress with employers
  • Connect to mentorship and career opportunities