In this article

Overview

You can use this Snap to add new Salesforce records in bulk to Salesforce.com by using Bulk API 2.0. The Snap submits the insert requests in batches.

Prerequisites

None.

Support for Ultra Pipelines

Works in Ultra Pipelines.

In Ultra Pipelines, set the Batch Size to 1 for the Snap to process one document/record at a time.

Limitation

  • This Snap performs batch processing, that is, a batch of input documents are processed for each HTTP request sent to Salesforce. Values of all the expression-enabled fields must remain constant during the Snap execution or validation. Hence, all expression fields can support Pipeline parameters only when they are expression-enabled. The input data parameters are not supported for expression fields, for example, $serviceVersion.

Snap Views

View TypeView FormatNumber of ViewsExamples of Upstream and Downstream SnapsDescription
Input Document
  • Min: 1
  • Max: 1
  • Mapper

This Snap has exactly one input view and receives documents in the view. Each document contains one Salesforce record.


OutputDocument
  • Min: 0
  • Max: 1
  • JSON Formatter
  • File Writer

This Snap has at most one output view and produces documents in the view. 

Error

Document

  • Min: 1

  • Max: 1

N/A

The error view contains error, reason, resolution and stack trace. For more information, see Handling Errors with an Error Pipeline.

Because of the potentially large size of the error messages, the Reason for the Salesforce error message in the error document field may be truncated.



The complete error is available in the field full_error under the original object containing copies of the failed input records or in the logs.


Snap Settings

Field NameField TypeDescription
Label*String

Specify the name for the Snap. Update the Snap name if there are two or more Snaps of the same type in your Pipeline.

Default ValueSalesforce Bulk Create
ExampleSalesforce Bulk Create

Service Version*

String/Expression/Suggestion

Specify the version number associated with the Salesforce service you want to connect to. Alternatively, click the Suggestion  icon to fetch the list of versions and select the desired version.


Default Value52.0 

Example41.0

Object Type*String

Specify the name of the Salesforce object or select one from the suggested list.

This Snap does not support Net Zero Cloud Salesforce objects.


Default ValueAccount
ExampleAccount

Related ObjectString

Enter or select a related object. This property does not affect the Snap operation on records in Salesforce. It is provided for the property suggestion and the input schema suggestion only. 

Default Value: N/A
ExampleAccount

Related External IDString

Enter or select an external ID of the selected related object. This property does not affect the Snap operation on records in Salesforce. It is provided for the property suggestion and the input schema suggestion only.

Default Value: N/A
ExampleAccountNumber__c

Display null or empty values as null



Checkbox

Select this checkbox to display empty string or null data as null in the output preview.

When you deselect this checkbox, the Snap displays empty string or null data as blank in the output preview.

Default Value: Deselected

The output in the Salesforce application remains unaffected. Whether the checkbox is selected or deselected, the Salesforce record and its corresponding output continues to appear empty, as shown below: 


Polling Interval*Integer

Define polling interval in seconds.

Default Value: 5
Example5

Polling Timeout*Integer

Specify the maximum time in seconds to wait for the query execution to complete.

Default Value: 3000
Example300

Maximum Retry AttemptsInteger

Specify the maximum number of retries to attempt in case of connection failure.

Default Value: 5
Example5

Retry Interval (seconds)Integer

Specify the interval between retries in seconds.

Default Value: 3
Example3

Snap ExecutionString

Select one of the three modes in which the Snap executes. Available options are:

  • Validate & Execute: Performs limited execution of the Snap, and generates a data preview during Pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during Pipeline runtime.
  • Execute only: Performs full execution of the Snap during Pipeline execution without generating preview data.
  • Disabled: Disables the Snap and all Snaps that are downstream from it.

Default ValueExecute only
ExampleValidate & Execute

Example

Displaying Empty String or Null Data as Null in the Output

This example pipeline demonstrates how you can enable the Salesforce Bulk Snaps to display empty strings and null data as null in the output using the Display null or empty values as null checkbox.

Configure the Mapper Snap to pass null data as follows:

Configure the Salesforce Bulk Create Snap as follows:

On validating the Snap, the empty strings and null data is displayed as null in the output.

Similarly, configure the Salesforce Bulk Query, Bulk Update, and Bulk Upsert Snaps along with upstream Mapper Snaps to pass the input. Select the Display null or empty values as null checkbox in all the Bulk Snaps. On validating the Snaps, the output is displayed as null in the output preview of the Salesforce Bulk Create, Bulk Upsert, Bulk Query and Bulk Update Snaps.

Snap Configuration

Snap Output

Create a New Bulk Record in Salesforce Object

This example demonstrates how to create a new bulk record in a Salesforce object.

The JSON Generator Snap generates five new JSON documents. The Snap output displays the documents' names and customized serial numbers.

The following images display the Snap configuration and output: 


The Mapper Snap transforms the incoming data using the given mappings and produces new output data. The Snap output displays the output documents' names and customized serial numbers. The following images display the Snap configuration and output: 



The Salesforce Bulk Create Snap adds new documents to Salesforce.comThe output from the Snap displays the new document names, ID, and customized serial numbers. The following images display the Snap configuration and output: 

Downloads