Skip to content

v0.5.0

Choose a tag to compare

@AllanOricil AllanOricil released this 03 Jun 03:56
· 41 commits to main since this release

0.5.0 (2026-06-03)

Bug Fixes

  • add missing locale labels and translate Connection field (e3eefc3)
  • use fresh token from jsforce connection for streaming (bf197e2)

Features

  • add channel picklist to streaming node (7d13eff)
  • add Open Org button to connection config node (1bbf8b0)
  • improve bulk node with streaming support and single result output (ed0bb7c)
  • split Apex into caller and code deployer nodes (0da89d9)

Breaking Changes

Apex nodes replaced

The salesforce-apex node has been replaced by two purpose-specific nodes:

  • salesforce-apex-invocation — Calls existing Apex REST endpoints or Invocable Actions. Select the type (REST/Invocable), pick an endpoint from a dropdown that queries your org, and choose the HTTP method.
  • salesforce-apex-code — Deploys and executes custom inline Apex code. Select the type (Invocable/REST), enter a class name, choose the HTTP method for REST, configure the URL mapping, and write your Apex method body in the built-in code editor.

Migration: Delete existing salesforce-apex nodes from your flows and replace them with salesforce-apex-invocation (for calling existing endpoints) or salesforce-apex-code (for deploying custom code). Re-wire any connections.

image image image

Bulk node restructured

The salesforce-bulk node has been significantly reworked:

  • Port layout changed: The node now has a single output port. Job Created and Job Complete output ports have been removed. Job lifecycle events (created, uploading, processing, complete) are communicated via this.status() — enable the Status Port toggle to react to them downstream.
  • Input format: Accepts Record[] arrays, CSV strings, or Node.js Readable streams for ingest operations. SOQL queries are now configured via a dedicated TypedInput field (str/msg/jsonata) instead of msg.payload.
  • Output format changed: For ingest operations, the output msg.payload is now a single results object { successfulResults, failedResults, unprocessedRecords } instead of streaming individual records.
  • New operations: hardDelete is now supported alongside insert, update, upsert, delete, and query.
  • emitJobCreated toggle removed: Job Created is no longer a separate output port.

Migration: Delete existing bulk nodes from your flows and re-add them. Update downstream nodes to read from msg.payload.successfulResults and msg.payload.failedResults instead of processing individual record messages. If you relied on the Job Created or Job Complete output ports, use the Status Port instead.

image

Config property renamed

The type config property has been renamed to apexType on both Apex nodes to avoid conflicts with Node-RED's reserved type property. This affects saved flows — nodes using the old property name will need to be reconfigured.