Composite Request

salesforce.composite_request
ActionCRM & salesconnection required

Calls the Salesforce REST API at the connection's instance URL.

Send up to 25 chained REST subrequests that can reference each other's output.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Salesforce
Secret shape
{"client_id", "client_secret", "refresh_token"}
Config it needs
login_url, api_version
Resolved by
config.connection_id, else node.connection_id

Configuration

2 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
subrequests
Subrequests as JSON: [{"method": "POST", "url": "/services/data/v59.0/sobjects/Account", "referenceId": "newAccount", "body": {"Name": "Acme"}}].
arrayYes—array of object—
all_or_none
True to roll every subrequest back when one of them fails.
booleanNofalse——

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "all_or_none": false
}

Output

One shape.

result

FieldTypeExample
responses
The compositeResponse entries, in request order.
array—
responses[].httpStatusCode
The subrequest's HTTP status.
number—
responses[].referenceId
The referenceId that was sent.
string—
responses[].body
The subrequest's response body.
any—
count
How many subrequest responses came back.
number—
has_errors
True when any subrequest returned 400 or worse.
boolean—
{
  "count": 0,
  "has_errors": false,
  "responses": [
    {
      "body": null,
      "httpStatusCode": 0,
      "referenceId": ""
    }
  ]
}

Notes

  • Salesforce caps a composite request at 25 subrequests.
  • A later subrequest reads an earlier one's output with @{referenceId.field} — a create answers with @{referenceId.id} (lower case), a read with the field's own casing, e.g. @{referenceId.Name}.

See Composite Request run in a workflow.

In a technical demo we add the Salesforce connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.