Salesforce Create

In this article

Overview

Salesforce Create is a Write-type Snap that enables you to create object records using REST API or Bulk API 1.0. The Snap in Bulk API mode submits a batch job and writes the batch job information to the output view, which should be passed to the Salesforce Poller Snap to check the result of the batch job. The Snap in REST API mode creates records and returns results synchronously without the need of the Salesforce Poller Snap.

To use newer Salesforce objects, use the latest API versions where those objects are available.


Salesforce Create Settings

Prerequisites

None.

Support for Ultra Pipelines 

Works in Ultra Pipelines.  

Limitations and Known Issues

None.

Snap Views

TypeFormatNumber of Views Examples of Upstream and Downstream SnapsDescription
InputDocument
Min: 1
Max: 1
  • CSV Generator
  • JSON Generator
This Snap receives documents in the view and each document contains one Salesforce record.
OutputDocument
Min: 0
Max: 1
  • Mapper
  • Salesforce Poller
A document that contains Map data with these elements: Job ID, Batch ID, URL, and an array of records if it is in Bulk API mode. If it is executed in REST API mode, each document contains Map data for the ID of the created record and input data. 
ErrorThis Snap has one optional error view and might produce documents in the view if the input data causes an error in the REST API. Each document contains key/value pairs from the input view and an error message from Salesforce.comIf the Snap is in the Bulk API, it will generate an error document in case of a batch job submission failure.

Snap Settings

FieldField TypeField DependencyDescription

Label


StringNone

Specify a unique name for the Snap.

Default ValueSalesforce Create
ExampleSalesforce Create

Service version 

String/Expression/SuggestionNone

Specify the version number associated with the Salesforce service that 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

Batch size

String/ExpressionNone

In Bulk API, this property value is allowed to be from 1 through 10,000. Each input document forms one Salesforce record to be inserted. The Snap stores records in memory until the number of records reaches the batch size and sends the request to SFDC in a single batch.   Increasing the batch size increases the amount of memory used during the data load. Decreasing the batch size increases the number of API calls against Salesforce.

In REST API, the Snap can insert only one record per each request regardless of the value of the Batch size property.

Default Value: 200
Example: 200, 10000

Object Type*

String/ExpressionNone

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 Value: Account 
Example: Account

Salesforce API


Dropdown listNone

This property sets the Salesforce API mode to Bulk API or REST API. The Snap in REST API mode creates one record at a time and returns the results at the output. REST API can be simpler and faster if the number of records to be created is small (a few).

Default Value: Bulk API
Example: REST API

Null Setting with Bulk APICheckboxNone

Select this checkbox to set the nullable fields to null in the Salesforce object if there are null values in the input document. This field works only if you select Bulk API mode in the Salesforce API field.

Default Value: Deselected
Example: Selected

Related Object



String/ExpressionNone

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

Default Value: [None]
Example:  Account

Related External ID


String/ExpressionNone

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

Default Value: [None]
Example:  AccountNumber__c

Apply active assignment rulesCheckboxAppears when you select REST API from the Salesforce API dropdown and when the Object Type is Account, Case, or Lead.

Select this checkbox to apply the active assignment rules for the selected object type (AccountCase, or Lead).

If you deselect this checkbox, active assignment rules are not applied for the selected object type (AccountCase, or Lead).

Default Value: Selected

Bulk API Serial mode


CheckboxNone

Select this checkbox to enable the Bulk API to run in Serial mode. Deselect this checkbox to allow the Bulk API to run in Batch mode.

Default Value: Not selected (Batch mode) 

Standardize Error Output


CheckboxNone

Select this checkbox to enable the Snap to produce the error output with Reason, Original, Stack trace and Resolution.

If you deselect this checkbox, the output view displays the input document along with the error message.

Default Value: Not selected

Pass Through


CheckboxNone

Select this checkbox to pass the input document the output view under the key 'original'.

If you deselect this checkbox, the input document will not be passed and there is no "original" key in the output document.

Default Value:  Selected

For Bulk APIs, if you select this checkbox and if the Batch size is equal to 1, the input document is passed to the output view under the key original. If the Batch size is greater than 1, the list of input documents is displayed under Records and the input document is not included under the original key.

Snap Execution

Dropdown listNone

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 Value: Execute Only
Example: Validate & Execute


Example

Creating New Records in Salesforce

The following example shows how to create a new record in a Salesforce object.

 

In the above pipeline execution:

  1. Object record details are provided to Salesforce Create Snap using a CSV Generator Snap: 

  2. The Salesforce Create Snap creates a new record in the Account object:  



    Successful execution of the Snap gives the following preview:

Downloads

Important steps to successfully reuse Pipelines

  1. Download and import the pipeline into the SnapLogic application.
  2. Configure Snap accounts as applicable.
  3. Provide pipeline parameters as applicable.

  File Modified

File Example_Salesforce_Create_Record.slp

Mar 10, 2022 by Subhajit Sengupta

Snap Pack History

 Click to view/expand
Release Snap Pack VersionDateType  Updates

May 2024

main26341

 

Stable

Updated and certified against the current SnapLogic Platform release.

February 2024436patches25626 LatestEnhanced the Salesforce Bulk Create, Bulk Delete, Bulk Query, Bulk Update, and Salesforce Bulk Upsert Snaps to include the complete error details under the original object that contains the copies of the failed input records.
February 2024436patches25192 Latest

Fixed an issue with the Salesforce Mutual Authentication Account where the 8443 port was not used while authorizing the account. Now, the access token request uses the 8443 port for authorizing the Mutual Authentication Account.

Breaking change

Prior to 436patches25192, the Salesforce Mutual Authentication Account supported default Login URLs such as https://login.salesforce.com and https://test.salesforce.com. From 436patches25192, this account no longer supports the default Login URLs—your existing pipelines using the Mutual Authentication Account with the default Login URLs might break.

To prevent this breaking change, you must provide a valid Salesforce Login URL as part of your account configuration.

February 2024main25112 StableEnhanced the Salesforce Bulk Query Snap with expression support for the Include Deleted Records checkbox.
November 2023435patches24747 LatestFixed an issue that caused the input stream to not close properly, which resulted in stale connections.
November 2023435patches24368 Latest

Enhanced the performance of the Salesforce Bulk Query Snap with a new Maximum threads field. This field enables you to download query results simultaneously in multiple threads.

November 2023435patches24006 Latest

Enhanced the Salesforce Read Snap by adding expression enablement to the following checkboxes:

  • Use PK chunking if supported

  • Include Deleted Records

November 2023main23721 StableUpdated and certified against the current SnapLogic Platform release.
August 2023434patches23646 LatestFixed an issue where a long-running pipeline containing the Salesforce Subscriber Snap would suddenly stop responding.
August 2023434patches22537 Latest

Improved the Salesforce Bulk Upsert Snap error messages by limiting the length of the reason displayed with the error.

August 2023main22460 StableUpdated and certified against the current SnapLogic Platform release.
May 2023433patches21367 Latest
  • The Salesforce SOQL Snap now honors the selection of the Match Data Type checkbox when the value entered for Batch Size is greater than 50,000.

  • The Salesforce Read Snap now honors the selection of the Match Data Type checkbox if the Use PK chunking if supported checkbox is also selected.

May 2023

main21015 

Stable

Upgraded with the latest SnapLogic Platform release.

February 2023432patches20586 Latest

Fixed an issue with the Salesforce SOQL and Salesforce Read Snaps where the Match Data Type checkbox selection was not honored if the Salesforce API field was set to Bulk API.

February 2023432patches20393 Latest
February 2023432patches20145 LatestFixed an issue with the Salesforce Read Snap that was causing an error for the Time data type.
February 2023432patches20087  Latest

The Salesforce Create, Update, and Upsert Snaps now include an Apply active assignment rules checkbox so you can control whether to use assignment rules for the selected object

February 2023

432patches20008

 Latest
  • Fixed an issue with the Salesforce Read Snap where using the bulk API request would fail due to column specification.
  • Added support to use PK chunking on any batch size with the bulk API request and to automatically disable PK chunking if it is known that it cannot be done

February 2023main19844 StableUpgraded with the latest SnapLogic Platform release.
November 2022main18944 Stable Upgraded with the latest SnapLogic Platform release.
October 2022430patches18769 Latest
  • The Salesforce Bulk Query Snap now includes the following checkboxes:

    • Match Data Type: Select this checkbox to match the data types of the bulk query job results.

    • Include Deleted Records: Select this checkbox to include deleted records in the query result.

  • The Salesforce Delete Snap in REST API no longer fails with NPE if a new OAuth2 account is used.

  • The Salesforce Read Snap now stops gracefully on a forced stop (without throwing cryptic errors).

  • The Salesforce Update and Salesforce Upsert Snaps no longer fail with the message "Error occurred while executing request to Salesforce.com" when a redirection is needed.

September 2022430patches18125 Latest

The Salesforce Bulk Create, Salesforce Bulk Delete, and Salesforce Bulk Update Snaps are now working as expected without displaying the error Error while processing Data and without returning 301-error while processing the data.

September 2022430patches18036 Latest

The Salesforce Read Snap now correctly parses the 2-byte UTF-8 characters in Windows OS in the PK chunking mode.

August 2022main17386 Stable
  • Updates in Salesforce Subscriber Snap:

    • CometD version upgrade from 5.0.9 to 7.0.6 (latest).

    • The simplified logging provides useful diagnostic information without logging any sensitive data.

    • The Snap asynchronously makes callbacks or listens to the CometD API to identify and respond to specific events.

    • The Snap processes the most recent message so that it can send that replay ID if there is a need to resubscribe. If the server responds with an invalid replay ID, the Snap automatically sets the Replay ID value to -2 to get all available messages.

  • You can select the Null Setting with Bulk API checkbox in the Salesforce Update, Salesforce Create, and Salesforce Upsert Snaps to format null values in the input document.

4.29 Patch

429patches16708 Latest
  • Updates in Salesforce Subscriber Snap:
    • Upgraded the Cometd version from 5.0.9 to the latest 7.0.6 version.
    • Fixed an issue where the Snap reported an error and stopped only at the next resubscribe attempt when it encountered the daily limit exceeded error. Now, the Snap displays the error and stops immediately when it encounters the daily limit exceeded error.
    • Simplified the logging that provides useful diagnostic information without logging any sensitive data.
    • Enhanced the Snap design to make the callbacks or listeners asynchronously by the Cometd API when there is a specific event, and the Snap responds accordingly.
    • Enhanced the tracking of replay ID of the most recent message processed so that Snap can send that replay ID if there is a need to resubscribe. If the server responds that the replay ID is invalid, Snap automatically sets the Replay ID value to -2 to get all available messages.
  • Made the Null Setting with Bulk API checkbox in the Salesforce Update, Salesforce Create, and Salesforce Upsert Snaps visible, to format a null value.

4.29main15993 StableUpgraded with the latest SnapLogic Platform release.
4.28 Patch428patches14355 

Latest

Fixed an issue with Salesforce Snaps where the Service Version could not be retrieved from SFDC due to a blocked URL, failing the Snap execution.

4.28main14627 StableUpgraded with the latest SnapLogic Platform release.
4.27 Patch

427patches14079

 Latest

Fixed an issue with the Salesforce Subscriber Snap where the Snap was unable to re-subscribe to a topic if it did not receive any message for 72 hours —stopped and displayed an error message. With this fix, the Snap automatically sets the Replay ID value to -2 when:

  • the specified Replay ID is invalid or outside the retention window.

  • the most recently received Replay ID for an event is outside the 72-hour retention window.

4.27 Patch427patches13944 LatestFixed an issue with Salesforce accounts, where an account password containing special characters and an empty security token was not properly encoded and the account was not validated.
4.27 Patch427patches13789 Latest

Fixed the following issues with Salesforce Snaps:

  • High memory use due to leaked resources.

  • Hung Pipelines due to blocked threads.

4.27main12833Stable
4.26 Patch426patches12054 Latest

Enhanced the Salesforce Subscriber Snap with improved resilience to network failures and fixed an issue with duplicate documents.

4.26main11181 StableUpgraded with the latest SnapLogic Platform release.
4.25 Patch425patches10182 LatestFixed an issue with the Salesforce Read Snap where the retry fields do not work as expected when a Pipeline has more than ten Snaps. 
4.25 Patch425patches9609 LatestEnhanced the Salesforce Read Snap to allow you to add an optional second output view that exposes the schema of the target object as the output document. The output view of the Snap has a minimum of one output and a maximum of two outputs. 
4.25main9554
 
Stable
  • Enhanced the Salesforce Upsert Snap to support CSV payload using the new field Bulk Content Type in Bulk API mode as Salesforce API has recently been supporting CSV payload as well. Earlier, this Snap supported only XML data type; you can now select CSV content type from the Bulk Content Type drop-down list. The default content type is set to XML to preserve backward compatibility. 
    This enhancement also addresses the null values issue during Bulk API mode. 
  • Enhanced the Snaps in the Salesforce Snap Pack by updating the field labels to title case. If you have existing Pipelines using Salesforce Snaps that include the field names in the error messages, you must update those Pipelines to use the new field labels.
4.24 Patch 424patches9024 Latest
4.24 Patch 424paches8569 Latest

Fixes an issue in Salesforce Bulk Upsert, Salesforce Bulk Update, and Salesforce Bulk Create Snaps that fail to process Related object and Related external ID values by modifying the input schema that formats the CSV data.

Potential Breaking Change

This Salesforce Snap patch contains an issue affecting the Salesforce Subscriber and Salesforce Publisher Snaps. If you do not use these Snaps in your Pipelines, then you can use this patch version. Else, we recommend you to not use this patch version as Pipelines will fail. We will fix this issue soon in an upcoming patch.

4.24main8556
StableUpgraded with the latest SnapLogic Platform release.
4.23 Patch 423patches7888 Latest
4.23main7430
 
StableUpgraded with the latest SnapLogic Platform release.
4.22main6403
 
StableUpgraded with the latest SnapLogic Platform release.
4.21 Patch salesforce8829 Latest

Fixed the Salesforce Create, Update, Bulk Create, Bulk Update, and Bulk Upsert Snaps, enabling you to upload files containing duplicate values across multiple fields.

4.21snapsmrc542

 

StableUpgraded with the latest SnapLogic Platform release.
4.20 Patch salesforce8814 Latest

Fixed the Salesforce Create, Update, Bulk Create, Bulk Update, and Bulk Upsert Snaps, enabling you to upload files containing duplicate values across multiple fields.

4.20 Patch salesforce8797 Latest

Fixed the Salesforce Subscriber Snap wherein the Salesforce Subscriber and Mapper Snap combination generates Null output for Array object type.

4.20snapsmrc535
 
Stable

Added the Salesforce Bulk Query Snap, which enables you to perform bulk SOQL queries on Salesforce.

4.19snaprsmrc528
 
Stable