Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Salesforce Expression API
description: 'Find the resources you need to start building. '
contact: {}
version: '1.0'
servers:
- url: https://login.salesforce.com
variables: {}
- url: https://id
variables: {}
- url: https://services
variables: {}
- url: '{{url}}{{site}}/services/oauth2'
variables:
url:
default: DefaultParameterValue
site:
default: DefaultParameterValue
security:
- oauth2:
- api
tags:
- name: Expression
paths:
/data/v64.0/connect/business-rules/expression-set/{expressionSetId}:
parameters: []
get:
tags:
- Expression
summary: Salesforce Expression Set Retrieve
description: "# Expression Set Retrieve and Delete (DELETE, GET)\n\nEndpoints to read, and delete expression set.Resource\n\n```\n/connect/business-rules/expression-set/${expressionSetId}\n\n ```\n\nResource Example\n\n```\nhttps://yourInstance.salesforce.com/services/data/v59.0/connect\n /business-rules/expressionSet/$11Oxx0000006PcLEAU\n\n ```\n\nAvailable version\n\n58.0\n\nRequires Chatter\n\nNo\n\nHTTP methods\n\nDELETE, GET\n\nRequest body for GET\n\nRoot XML tag\n\nJSON example\n\n```\n{\n \"name\": \"CTX Mapping ES\",\n \"apiName\": \"CTX_Mapping_ES_1\",\n \"description\": \"...\",\n \"usageType\": \"Bre\",\n \"contextDefinitions\": [\n {\n \"id\": \"11Oxx0000006PcLEAU\"\n }\n ],\n \"versions\": [\n {\n \"name\": \"CTX_Mapping_ES_1 V1\",\n \"apiName\": \"CTX_Mapping_ES_1_V1\",\n \"description\": \"Sample CTX Mapping\",\n \"startDate\": \"2022-11-14T20:31:47.000+0000\",\n \"endDate\": \"2022-11-14T20:31:47.000+0000\",\n \"versionNumber\": 1,\n \"rank\": 1,\n \"enabled\": true,\n \"showExplExternally\": false,\n \"steps\": [\n {\n \"name\": \"Condition1\",\n \"description\": \"Condition step for conditions w.r.t product\",\n \"sequenceNumber\": 1,\n \"resultIncluded\": true,\n \"stepType\": \"Condition\",\n \"conditionExpression\": {\n \"expression\": \"productName == 'iPhone' && productColor == 'Red'\",\n \"resultParameter\": \"condition_output__1\"\n }\n }\n ],\n \"variables\": [\n {\n \"name\": \"productName\",\n \"collection\": false,\n \"dataType\": \"Text\",\n \"description\": \"productName\",\n \"input\": true,\n \"output\": false,\n \"type\": \"Variable\"\n },\n {\n \"name\": \"productColor\",\n \"collection\": false,\n \"dataType\": \"Text\",\n \"description\": \"productColor\",\n \"input\": true,\n \"output\": false,\n \"type\": \"Variable\"\n },\n {\n \"name\": \"condition_output__1\",\n \"dataType\": \"Boolean\",\n \"description\": \"condition_output__1\",\n \"input\": false,\n \"output\": true,\n \"resultStep\": \"Condition1\",\n \"type\": \"Variable\"\n }\n ]\n }\n ]\n}\n\n ```\n\nProperties\n\n| Name | Type | Description | Required or Optional | Available Version |\n| --- | --- | --- | --- | --- |\n| apiName | String | Unique name of the expression set. | Required | 58.0 |\n| contextDefinitions | [Context Definition Input](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_requests_context_definition_input.htm) | List of context definitions in an expression set. | Optional | 58.0 |\n| description | String | Description of the expression set. | Optional | 58.0 |\n| name | String | Name of the expression set. | Required | 58.0 |\n| usageType | String | Usage type of the expression set. <br> <br>Valid values are: <br> <br>\\- AiAcceleratorSubscriberChurnPrediction—Used for Industries Einstein <br> <br>\\- Bre—Used for Business Rules Engine <br> <br>\\- CustomLoyalty—Used for Loyalty Management <br> <br>\\- DefaultPricing—Used for Pricing Plans in Enterprise Product Catalog (EPC) by Communications Cloud <br> <br>\\- Qualification—Used for Industries Communications, Media, and Energy (CME) <br> <br>\\- RecordAlert—Used for Financial Services Cloud <br> <br>\\- ShipAndDebit—Used for Manufacturing Cloud <br> <br>\\- TierProcessing—Used for Loyalty Management <br> <br>\\- TransactionJournal—Used for Loyalty Management <br> <br>\\- WarrantyClaim—Used for Manufacturing Cloud | Required | 58.0 |\n| versions | [Expression Set Version Input](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_requests_expression_set_version.htm)\\[\\] | List of the expression set versions. | Optional | 58.0 |\n\nResponse body for GET[Expression Set Output](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_responses_expression_set_output.htm)"
operationId: ExpressionSetRetrieve
parameters:
- name: expressionSetId
in: path
description: 'Expression Set Id: For Example 9QLHo000000LBjEOAW'
required: true
schema:
type: string
examples:
- 9QLHo000000LBngOAG
example: '500123'
responses:
'200':
description: OK
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 09:34:42 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Vary:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Accept-Encoding
Content-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: gzip
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
allOf:
- $ref: '#/components/schemas/Status200-RecordFound'
- examples:
- apiName: myExpressionSet
contextDefinitions: []
id: 9QLHo000000LBjEOAW
name: myExpressionSet
usageType: Bre
versions:
- apiName: myExpressionSet_V1
description: myExpressionSet V1 Description
enabled: true
id: 9QMHo000000LBjJOAW
name: myExpressionSet V1
rank: 1
showExplExternally: true
startDate: '2023-09-06T09:27:06.000Z'
steps:
- actionType: AssignParameterValues
assignment:
assignedParameter: condition_output__1
expression: 'true'
description: my Description
name: myCalculation
resultIncluded: true
sequenceNumber: 1
shouldExposeConditionDetails: false
shouldExposeExecPathMsgOnly: true
shouldShowExplExternally: false
stepType: BusinessKnowledgeModel
variables:
- collection: false
dataType: Boolean
description: condition_output__1
input: false
name: condition_output__1
output: true
type: Variable
value: 'False'
- collection: false
dataType: Boolean
description: condition_output__2
input: false
name: condition_output__2
output: false
type: Variable
value: 'False'
versionNumber: 1
contentMediaType: application/json;charset=UTF-8
example:
apiName: myExpressionSet
contextDefinitions: []
id: 9QLHo000000LBjEOAW
name: myExpressionSet
usageType: Bre
versions:
- apiName: myExpressionSet_V1
description: myExpressionSet V1 Description
enabled: true
id: 9QMHo000000LBjJOAW
name: myExpressionSet V1
rank: 1
showExplExternally: true
startDate: '2023-09-06T09:27:06.000Z'
steps:
- actionType: AssignParameterValues
assignment:
assignedParameter: condition_output__1
expression: 'true'
description: my Description
name: myCalculation
resultIncluded: true
sequenceNumber: 1
shouldExposeConditionDetails: false
shouldExposeExecPathMsgOnly: true
shouldShowExplExternally: false
stepType: BusinessKnowledgeModel
variables:
- collection: false
dataType: Boolean
description: condition_output__1
input: false
name: condition_output__1
output: true
type: Variable
value: 'False'
- collection: false
dataType: Boolean
description: condition_output__2
input: false
name: condition_output__2
output: false
type: Variable
value: 'False'
versionNumber: 1
'400':
description: Bad Request
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 10:29:39 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
type: array
items:
$ref: '#/components/schemas/Status400-PreviouslyDeletedRecord1'
description: ''
examples:
- - errorCode: INVALID_INPUT
message: The expression set id is not available.
contentMediaType: application/json;charset=UTF-8
example:
- errorCode: INVALID_INPUT
message: The expression set id is not available.
'404':
description: Not Found
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 09:56:59 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
type: array
items:
$ref: '#/components/schemas/Status404-RecordNotFound1'
description: ''
examples:
- - errorCode: NOT_FOUND
message: The requested resource does not exist
contentMediaType: application/json;charset=UTF-8
example:
- errorCode: NOT_FOUND
message: The requested resource does not exist
deprecated: false
servers:
- url: https://services
variables: {}
x-api-evangelist-processing:
PascalCaseOperationSummaries: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
patch:
tags:
- Expression
summary: Salesforce Expression Set Update
description: "# Expression Set Update (PATCH)\n\nEndpoints to read, and update expression set.Resource\n\n```\n/connect/business-rules/expression-set/${expressionSetId}\n\n ```\n\nResource Example\n\n```\nhttps://yourInstance.salesforce.com/services/data/v59.0/connect\n /business-rules/expressionSet/$11Oxx0000006PcLEAU\n\n ```\n\nAvailable version\n\n58.0\n\nRequires Chatter\n\nNo\n\nHTTP methods\n\nDELETE, GET, PATCH\n\nResponse body for GET\n\n[Expression Set Output](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_responses_expression_set_output.htm)\n\nRequest body for PATCH\n\nRoot XML tag\n\nJSON example\n\n```\n{\n \"name\": \"CTX Mapping ES\",\n \"apiName\": \"CTX_Mapping_ES_1\",\n \"description\": \"...\",\n \"usageType\": \"Bre\",\n \"contextDefinitions\": [\n {\n \"id\": \"11Oxx0000006PcLEAU\"\n }\n ],\n \"versions\": [\n {\n \"name\": \"CTX_Mapping_ES_1 V1\",\n \"apiName\": \"CTX_Mapping_ES_1_V1\",\n \"description\": \"Sample CTX Mapping\",\n \"startDate\": \"2022-11-14T20:31:47.000+0000\",\n \"endDate\": \"2022-11-14T20:31:47.000+0000\",\n \"versionNumber\": 1,\n \"rank\": 1,\n \"enabled\": true,\n \"showExplExternally\": false,\n \"steps\": [\n {\n \"name\": \"Condition1\",\n \"description\": \"Condition step for conditions w.r.t product\",\n \"sequenceNumber\": 1,\n \"resultIncluded\": true,\n \"stepType\": \"Condition\",\n \"conditionExpression\": {\n \"expression\": \"productName == 'iPhone' && productColor == 'Red'\",\n \"resultParameter\": \"condition_output__1\"\n }\n }\n ],\n \"variables\": [\n {\n \"name\": \"productName\",\n \"collection\": false,\n \"dataType\": \"Text\",\n \"description\": \"productName\",\n \"input\": true,\n \"output\": false,\n \"type\": \"Variable\"\n },\n {\n \"name\": \"productColor\",\n \"collection\": false,\n \"dataType\": \"Text\",\n \"description\": \"productColor\",\n \"input\": true,\n \"output\": false,\n \"type\": \"Variable\"\n },\n {\n \"name\": \"condition_output__1\",\n \"dataType\": \"Boolean\",\n \"description\": \"condition_output__1\",\n \"input\": false,\n \"output\": true,\n \"resultStep\": \"Condition1\",\n \"type\": \"Variable\"\n }\n ]\n }\n ]\n}\n\n ```\n\nProperties\n\n| Name | Type | Description | Required or Optional | Available Version |\n| --- | --- | --- | --- | --- |\n| apiName | String | Unique name of the expression set. | Required | 58.0 |\n| contextDefinitions | [Context Definition Input](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_requests_context_definition_input.htm) | List of context definitions in an expression set. | Optional | 58.0 |\n| description | String | Description of the expression set. | Optional | 58.0 |\n| name | String | Name of the expression set. | Required | 58.0 |\n| usageType | String | Usage type of the expression set.<br><br>Valid values are:<br><br>- AiAcceleratorSubscriberChurnPrediction—Used for Industries Einstein<br> <br>- Bre—Used for Business Rules Engine<br> <br>- CustomLoyalty—Used for Loyalty Management<br> <br>- DefaultPricing—Used for Pricing Plans in Enterprise Product Catalog (EPC) by Communications Cloud<br> <br>- Qualification—Used for Industries Communications, Media, and Energy (CME)<br> <br>- RecordAlert—Used for Financial Services Cloud<br> <br>- ShipAndDebit—Used for Manufacturing Cloud<br> <br>- TierProcessing—Used for Loyalty Management<br> <br>- TransactionJournal—Used for Loyalty Management<br> <br>- WarrantyClaim—Used for Manufacturing Cloud | Required | 58.0 |\n| versions | [Expression Set Version Input](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_requests_expression_set_version.htm)\\[\\] | List of the expression set versions. | Optional | 58.0 |\n\nResponse body for PATCH\n\n[Expression Set Output](https://developer.salesforce.com/docs/atlas.en-us.industries_reference.meta/industries_reference/connect_responses_expression_set_output.htm)"
operationId: ExpressionSetUpdate
parameters:
- name: expressionSetId
in: path
description: 'Expression Set Id: For Example 9QLHo000000LBjEOAW'
required: true
schema:
type: string
examples:
- 9QLHo000000LBjJOAW
example: '500123'
requestBody:
description: ''
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ExpressionSetUpdateRequest'
- examples:
- apiName: myExpressionSet
contextDefinitions: []
name: myExpressionSet2
usageType: Bre
versions:
- apiName: myExpressionSet_V1
enabled: false
id: 9QMHo000000LBjOOAW
name: myExpressionSet V1
showExplExternally: false
startDate: '2023-09-06T10:35:11.000Z'
steps: []
variables: []
versionNumber: 1
contentMediaType: application/json
example:
apiName: myExpressionSet
contextDefinitions: []
name: myExpressionSet2
usageType: Bre
versions:
- apiName: myExpressionSet_V1
enabled: false
id: 9QMHo000000LBjOOAW
name: myExpressionSet V1
showExplExternally: false
startDate: '2023-09-06T10:35:11.000Z'
steps: []
variables: []
versionNumber: 1
required: true
responses:
'200':
description: OK
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 10:48:19 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
allOf:
- $ref: '#/components/schemas/Status200-SuccessfullyUpdated'
- examples:
- apiName: myExpressionSet
contextDefinitions: []
id: 9QLHo000000LBjJOAW
name: myExpressionSet2
usageType: Bre
versions:
- apiName: myExpressionSet_V1
enabled: false
id: 9QMHo000000LBjOOAW
name: myExpressionSet V1
showExplExternally: false
startDate: '2023-09-06T10:35:11.000Z'
steps: []
variables: []
versionNumber: 1
contentMediaType: application/json;charset=UTF-8
example:
apiName: myExpressionSet
contextDefinitions: []
id: 9QLHo000000LBjJOAW
name: myExpressionSet2
usageType: Bre
versions:
- apiName: myExpressionSet_V1
enabled: false
id: 9QMHo000000LBjOOAW
name: myExpressionSet V1
showExplExternally: false
startDate: '2023-09-06T10:35:11.000Z'
steps: []
variables: []
versionNumber: 1
'400':
description: Bad Request
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 10:44:53 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
type: array
items:
$ref: '#/components/schemas/Status400-UnrecognizedBodyField1'
description: ''
examples:
- - errorCode: JSON_PARSER_ERROR
message: Unrecognized field "id" at [line:4, column:12]
contentMediaType: application/json;charset=UTF-8
example:
- errorCode: JSON_PARSER_ERROR
message: Unrecognized field "id" at [line:4, column:12]
'404':
description: Not Found
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 10:46:00 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
type: array
items:
$ref: '#/components/schemas/Status404-RecordNotFound1'
description: ''
examples:
- - errorCode: NOT_FOUND
message: The requested resource does not exist
contentMediaType: application/json;charset=UTF-8
example:
- errorCode: NOT_FOUND
message: The requested resource does not exist
'500':
description: Server Error
headers:
Date:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: Wed, 06 Sep 2023 10:43:16 GMT
Strict-Transport-Security:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: max-age=63072000; includeSubDomains
X-Content-Type-Options:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: nosniff
X-XSS-Protection:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: 1; mode=block
X-Robots-Tag:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: none
Cache-Control:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: no-cache,must-revalidate,max-age=0,no-store,private
Transfer-Encoding:
content:
text/plain:
schema:
type: string
contentMediaType: text/plain
example: chunked
content:
application/json;charset=UTF-8:
schema:
type: array
items:
$ref: '#/components/schemas/Status500-ErrorNoBody1'
description: ''
examples:
- - mes
# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/salesforce/refs/heads/main/openapi/salesforce-expression-api-openapi.yml