You are here:
Integration Procedure Best Practices
To maximize the benefits of Integration Procedures, follow the best practices whenever possible.
-
Use Integration Procedures for all data calls to Salesforce.
-
To avoid SOQL limit errors, don't put too many data calls in the same Integration Procedure.
-
To ensure data security and maintain compliance with Salesforce encryption access controls, always check that a user has the View Encrypted Data permission before displaying or processing decrypted values of encrypted fields.
- To maximize reuse and performance, use a modular approach to implement a small group of related functions in each Integration Procedure.
-
Use a Response Action for Integration Procedures to trim the data and only return what is needed. For specific trimming strategies, see Manipulate JSON with the Send/Response Transformations Properties.
-
To allow an Integration Procedure to exit early under appropriate conditions, use multiple Response Actions with different Execution Conditional Formulas.
-
Use caching to store frequently accessed, infrequently updated data. See Improving Data Mapper Performance with Caching.
-
Avoid using an empty Loop Block in an Integration Procedure without any action elements inside it. Loop Blocks iterate over a data array and execute defined actions for each item. Without any action elements inside, the Loop Block performs no meaningful work and may indicate a design flaw. Additionally, unnecessary loops can negatively impact performance and maintainability of your Integration Procedures. To ensure efficiency and clarity, always include relevant action elements within the Loop Block.
-
To run data operations asynchronously, call Integration Procedures using these settings:
-
Use Future — Use when the calling Omniscript or Integration Procedure doesn't need a response and completion time isn’t critical.
-
Invoke Mode: Fire and Forget — Use Invoke Mode instead of Use Future when the calling Omniscript must invoke the Integration Procedure immediately.
-
Invoke Mode: Non-Blocking — Use to run the Integration Procedure immediately while continuing the user interaction of the calling Omniscript. A response is returned when the Integration Procedure is complete.
Note When an Omniscript invokes an Integration Procedure asynchronously, the Integration Procedure continues running if the user goes to the next step, but not if the user navigates away from the Omniscript.For more information about these settings, see Common Action Element Properties, Retrieve Data with an Integration Procedure in an Omniscript, and Integration Procedure Action for Integration Procedures.
-
To determine whether an Omnistudio Data Mapper or an Integration Procedure is best for your use case, see When to Use Omnistudio Data Mappers and Integration Procedures.

