OmniIntegrationProcedure

Represents an Omnistudio Integration Procedure for the Discovery Framework. It enables declarative, server-side processing to perform multiple actions in a single server call, supporting sales, service, and other business workflows. For Discovery Framework, the customization type is discoveryframework.

Parent Type 

This type extends the Metadata metadata type and inherits its fullName field.

File Suffix and Directory Location 

OmniIntegrationProcedure components have the suffix .omniIntegrationProcedure and are stored in the omnistudio/<Namespace>/omniIntegrationProcedures folder.

Version 

OmniIntegrationProcedure components are available in API version 56.0 and later.

Special Access Rules 

To use this metadata type, you must have an Omnistudio license and the Discovery Framework feature enabled in your Salesforce org.

Fields 

customHtmlTemplates 

  • Field Type: string
  • Description: The angular Omniscript template definitions.

customJavaScript 

  • Field Type: string
  • Description: The custom JavaScript used for integration procedure.

description 

  • Field Type: string
  • Description: The description of the integration procedure.

designerCustomizationType 

  • Field Type: string
  • Description: The Omnistudio designer customization type.

elementTypeComponentMapping 

  • Field Type: string
  • Description: Overrides all elements of one type with a custom Lightning web component by mapping the element type to the Custom LWC.

integrationProcedureInput 

  • Field Type: string
  • Description: The input for the integration procedure in JSON format.

integrationProcedureOutput 

  • Field Type: string
  • Description: The output for the integration procedure in JSON format.

isActive 

  • Field Type: boolean
  • Description: Indicates whether the integration procedure is active (true) or not (false).
  • Default value: false

isIntegProcdSignatureAvl 

  • Field Type: boolean
  • Description: Indicates whether the integration procedure has a signature (true) or not (false).
  • Default value: false

isIntegrationProcedure 

  • Field Type: boolean
  • Description: Indicates whether Omniscript is an Integration Procedure (true) or Omniscript metadata (false).

isManagedUsingStdDesigner 

  • Field Type: boolean
  • Description: Indicates whether the integration procedure is managed using standard designer (true) or not (false).

isMetadataCacheDisabled 

  • Field Type: boolean
  • Description: Indicates whether metadata cache for the integration procedure is disabled (true) or not (false).
  • Default value: false

isOmniScriptEmbeddable 

  • Field Type: boolean
  • Description: Indicates whether the Omniscript can be embedded in other Omniscripts (true) or not (false).
  • Default value: false

isTestProcedure 

  • Field Type: boolean
  • Description: Indicates whether OmniIntegrationProcedure is a test procedure setting (true) or not (false).
  • Default value: false

isWebCompEnabled 

  • Field Type: boolean
  • Description: Indicates whether web component Omniscript (not Angular) is enabled (true) or not (false).
  • Default value: false

language 

  • Field Type: string

  • Description: Required.

    The language of the integration procedure.

lastPreviewPage 

  • Field Type: string
  • Description: The last page previewed in the Omniscript designer.

name 

  • Field Type: string

  • Description: Required.

    The name of the integration procedure.

nameSpace 

  • Field Type: string
  • Description: The namespace associated with the integration procedure record.

omniProcessElements 

  • Field Type: OmniProcessElement[]
  • Description: The OmniProcessElements associated with the OmniIntegrationProcedure.

omniProcessKey 

  • Field Type: string
  • Description: The integration procedure Type_SubType value.

omniProcessType 

  • Field Type: OmniProcessType (enumeration of type string)

  • Description: Required. Integration Procedure or Omniscript.

  • Possible values:

    • Integration Procedure

overrideKey 

  • Field Type: string
  • Description: Reserved for future use.

propertySetConfig 

  • Field Type: string
  • Description: The configuration information associated with the OmniIntegrationProcedure.

requiredPermission 

  • Field Type: string
  • Description: The required permissions to execute the integration procedure.

responseCacheType 

  • Field Type: string
  • Description: Response cache used for the integration procedure (session or Org).

subType 

  • Field Type: string

  • Description: Required.

    The subtype value that’s used with type and language to create a unique identifier for integration procedure. Integration Procedure subtype can contain only alphanumeric characters.

type 

  • Field Type: string

  • Description: Required.

    The type value that’s used with subtype and language to create a unique identifier for integration procedure. Integration Procedure type can contain only alphanumeric characters.

uniqueName 

  • Field Type: string

  • Description: Required.

    The unique name for the integration procedure as Type_SubType_Language_VersionNumber.

versionNumber 

  • Field Type: string

  • Description: Required.

    A numeric version that’s used with subtype, type, and language to create a unique identifier for integration procedure.

webComponentKey 

  • Field Type: string
  • Description: Internal unique key for the generated Lightning Web Components (LWC).

OmniProcessElement 

Represents the Omnistudio Process Element associated with the Omnistudio Integration Procedure.

childElements 

  • Field Type: OmniProcessElement[]
  • Description: The child elements associated with the OmniProcessElement.

description 

  • Field Type: string
  • Description: The description of the OmniProcessElement.

designerCustomizationType 

  • Field Type: string
  • Description: The Omnistudio designer customization type.

discoveryFrameworkUsageType 

  • Field Type: string
  • Description: The usage type for industries that use the Discovery Framework. For example, the value for Health Cloud is HcUsageType. The value for no specific industry is Default.

embeddedOmniScriptKey 

  • Field Type: string
  • Description: The ID of the embedded Omniscript.

isActive 

  • Field Type: boolean
  • Description: Indicates whether the status of the OmniProcessElement is active (true) or not (false).

isOmniScriptEmbeddable 

  • Field Type: boolean
  • Description: Indicates whether the Omniscript with the OmniProcessElement can be embedded in other Omniscript (true) or not (false).

level 

  • Field Type: double
  • Description: The vertical level in which the OmniProcessElement occurs on the Omniscript.

name 

  • Field Type: string

  • Description: Required.

    The name of the OmniProcessElement.

omniProcessVersionNumber 

  • Field Type: double
  • Description: The version number of Omnistudio process element.

parentElementName 

  • Field Type: string
  • Description: The name of the parent OmniProcessElement.

parentElementType 

  • Field Type: string
  • Description: The type of the parent OmniProcessElement.

propertySetConfig 

  • Field Type: textarea
  • Description: The property set of the OmniProcessElement.

sequenceNumber 

  • Field Type: double
  • Description: The horizontal level in which the OmniProcessElement occurs on the Omniscript.

type 

  • Field Type: string
  • Description: The OmniProcessElement type. For example, Text and TextArea.

uniqueIndex 

  • Field Type: string
  • Description: A unique index number for the Omniscript.

Declarative Metadata Sample Definition 

The following is an example of an OmniIntegrationProcedure component.

1<?xml version="1.0" encoding="UTF-8"?>
2<OmniIntegrationProcedure xmlns="http://soap.sforce.com/2006/04/metadata">
3    <customJavaScript>{&quot;salary&quot;:332}</customJavaScript>
4    <elementTypeComponentMapping>{&quot;ElementTypeToHTMLTemplateList&quot;:[]}</elementTypeComponentMapping>
5    <integrationProcedureInput>{
6  &quot;properties&quot;: {
7    &quot;salary&quot;: {
8      &quot;type&quot;: &quot;integer&quot;
9    }
10  },
11  &quot;type&quot;: &quot;object&quot;,
12  &quot;title&quot;: &quot;Data&quot;,
13  &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;
14}</integrationProcedureInput>
15    <integrationProcedureOutput>{
16  &quot;properties&quot;: {
17    &quot;tax&quot;: {
18      &quot;type&quot;: &quot;double&quot;
19    }
20  },
21  &quot;type&quot;: &quot;object&quot;,
22  &quot;title&quot;: &quot;Data&quot;,
23  &quot;$schema&quot;: &quot;https://json-schema.org/draft/2020-12/schema&quot;
24}</integrationProcedureOutput>
25    <isActive>true</isActive>
26    <isIntegProcdSignatureAvl>true</isIntegProcdSignatureAvl>
27    <isIntegrationProcedure>true</isIntegrationProcedure>
28    <isManagedUsingStdDesigner>false</isManagedUsingStdDesigner>
29    <isMetadataCacheDisabled>false</isMetadataCacheDisabled>
30    <isOmniScriptEmbeddable>false</isOmniScriptEmbeddable>
31    <isTestProcedure>false</isTestProcedure>
32    <isWebCompEnabled>false</isWebCompEnabled>
33    <language>English</language>
34    <name>Calc</name>
35    <omniProcessElements>
36        <description>Response Action</description>
37        <isActive>true</isActive>
38        <isOmniScriptEmbeddable>false</isOmniScriptEmbeddable>
39        <level>0.0</level>
40        <name>Response</name>
41        <omniProcessVersionNumber>0.0</omniProcessVersionNumber>
42        <propertySetConfig>{
43  &quot;responseJSONPath&quot; : &quot;&quot;,
44  &quot;responseJSONNode&quot; : &quot;&quot;,
45  &quot;executionConditionalFormula&quot; : &quot;&quot;,
46  &quot;returnFullDataJSON&quot; : false,
47  &quot;additionalOutput&quot; : {
48    &quot;tax&quot; : &quot;=%salary%*0.3&quot;
49  },
50  &quot;returnOnlyAdditionalOutput&quot; : false,
51  &quot;sendJSONPath&quot; : &quot;&quot;,
52  &quot;responseFormat&quot; : &quot;&quot;,
53  &quot;id&quot; : &quot;&quot;,
54  &quot;isActive&quot; : true,
55  &quot;restOptions&quot; : { },
56  &quot;sendJSONNode&quot; : &quot;&quot;
57}</propertySetConfig>
58        <sequenceNumber>1.0</sequenceNumber>
59        <type>Response Action</type>
60    </omniProcessElements>
61    <omniProcessKey>calc_calc</omniProcessKey>
62    <omniProcessType>Integration Procedure</omniProcessType>
63    <propertySetConfig>{
64  &quot;transientValues&quot; : {
65    &quot;deactivateConsent&quot; : false
66  }
67}</propertySetConfig>
68    <subType>calc</subType>
69    <type>calc</type>
70    <uniqueName>calc_calc_English_1</uniqueName>
71    <versionNumber>1.0</versionNumber>
72</OmniIntegrationProcedure>

The following is an example package.xml that references the previous definition.

1<?xml version="1.0" encoding="UTF-8"?>
2<Package
3    xmlns="http://soap.sforce.com/2006/04/metadata">
4    <types>
5        <members>*</members>
6        <name>OmniIntegrationProcedure</name>
7    </types>
8    <version>68.0</version>
9</Package>

Wildcard Support in the Manifest File 

Wildcard Support in the Manifest File 

This metadata type supports the wildcard character * (asterisk) in the package.xml manifest file. For information about using the manifest file, see Deploying and Retrieving Metadata with the Zip File.

Usage Type 

Before you retrieve or deploy Discovery Framework OmniScripts, we recommend that you review this consideration.

  • When deploying the OmniIntegrationProcedure of type Discovery Framework, enable Discovery Framework Metadata Enabled setting.