InvocableActionExtension
Parent Type
File Suffix and Directory Location
InvocableActionExtension components have the suffix .invocableactionextension and are stored in the invocableactionextensions folder.
Version
InvocableActionExtension components are available in API version 65.0 and later.
Fields
| Field Name | Description |
|---|---|
| targets |
|
InvocableActionExtensionTarget
Represents an extension that can contain attributes for an action's definition, parameters, and types. Use InvocableActionExtensionTarget as the parent element for a given target, such as an ActionParameter. Each assigned attribute is a child of this element.
| Field Name | Description |
|---|---|
| attributes |
|
| targetName |
|
| targetType |
|
InvocableActionExtensionTargetAttribute
Represents the individual configuration attributes within an extension target. Use InvocableActionExtensionTargetAttribute as the child element of InvocableActionExtensionTarget to define specific behaviors, dependencies, and properties. Each attribute consists of a key-value pair with an associated data type. This configuration determines how the target action parameter, type property, or action definition behaves.
| Field Name | Description |
|---|---|
| dataType |
|
| key |
|
| value |
|
Declarative Metadata Sample Definition
The following example shows an InvocableActionExtension component definition.
1<?xml version="1.0" encoding="UTF-8"?>
2<InvocableActionExt xmlns="http://soap.sforce.com/2006/04/metadata">
3 <targets>
4 <targetType>ActionParameter</targetType>
5 <targetName>Example.Request.inputOne</targetName>
6 <attributes>
7 <key>Order</key>
8 <dataType>Integer</dataType>
9 <value>1</value>
10 </attributes>
11 <attributes>
12 <key>Group</key>
13 <dataType>String</dataType>
14 <value>Group A</value>
15 </attributes>
16 </targets>
17 <targets>
18 <targetType>ActionParameter</targetType>
19 <targetName>Example.Request.inputTwo</targetName>
20 <attributes>
21 <key>Order</key>
22 <dataType>Integer</dataType>
23 <value>2</value>
24 </attributes>
25 <attributes>
26 <key>Group</key>
27 <dataType>String</dataType>
28 <value>Group A</value>
29 </attributes>
30 </targets>
31 <targets>
32 <targetType>ActionParameter</targetType>
33 <targetName>Example.Request.inputThree</targetName>
34 <attributes>
35 <key>Order</key>
36 <dataType>Integer</dataType>
37 <value>3</value>
38 </attributes>
39 <attributes>
40 <key>Group</key>
41 <dataType>String</dataType>
42 <value>Group B</value>
43 </attributes>
44 </targets>
45</InvocableActionExt>The following example shows how to define static picklist values for an input parameter.
1<?xml version="1.0" encoding="UTF-8"?>
2<InvocableActionExtension xmlns="http://soap.sforce.com/2006/04/metadata">
3 <targets>
4 <targetType>ActionParameter</targetType>
5 <targetName>Example.Request.inputOne</targetName>
6 <attributes>
7 <key>ProvidedValueList</key>
8 <dataType>String</dataType>
9 <value>option1|Option 1, option2|Option 2, option3|Option 3</value>
10 </attributes>
11 </targets>
12</InvocableActionExtension>The following example shows how to reference a dynamic picklist class for an input parameter.
1<?xml version="1.0" encoding="UTF-8"?>
2<InvocableActionExtension xmlns="http://soap.sforce.com/2006/04/metadata">
3 <targets>
4 <targetType>ActionParameter</targetType>
5 <targetName>Example.Request.inputOne</targetName>
6 <attributes>
7 <key>ProvidedValueList</key>
8 <dataType>String</dataType>
9 <value>apex://MyDynamicPicklistClass</value>
10 </attributes>
11 </targets>
12</InvocableActionExtension>The following example shows how to assign a partial custom property editor to a primary parameter and link a related parameter.
1<?xml version="1.0" encoding="UTF-8"?>
2<InvocableActionExtension xmlns="http://soap.sforce.com/2006/04/metadata">
3 <targets>
4 <targetType>ActionParameter</targetType>
5 <targetName>Example.Request.inputOne</targetName>
6 <attributes>
7 <key>CpeName</key>
8 <dataType>String</dataType>
9 <value>c:myCustomEditor</value>
10 </attributes>
11 </targets>
12 <targets>
13 <targetType>ActionParameter</targetType>
14 <targetName>Example.Request.inputTwo</targetName>
15 <attributes>
16 <key>ConfiguredBy</key>
17 <dataType>String</dataType>
18 <value>inputOne</value>
19 </attributes>
20 </targets>
21</InvocableActionExtension>The following example shows how to add a custom header to an action.
1<?xml version="1.0" encoding="UTF-8"?>
2<InvocableActionExtension xmlns="http://soap.sforce.com/2006/04/metadata">
3 <targets>
4 <targetType>ActionDefinition</targetType>
5 <targetName>Example</targetName>
6 <attributes>
7 <key>CustomHeaderLwcName</key>
8 <dataType>String</dataType>
9 <value>c:myCustomHeader</value>
10 </attributes>
11 </targets>
12</InvocableActionExtension>The following example shows a package.xml file that references the previous definition.
1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3 <types>
4 <members>Example</members>
5 <name>InvocableActionExtension</name>
6 </types>
7 <version>65.0</version>
8</Package>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.