Salesforce Poller

Salesforce Poller

In this article

Overview

This Snap provides the functionality to poll the status of the batch job submitted to Salesforce by the preceding Salesforce Snaps (Create/Delete/Update/Upsert) in Bulk API mode. This Snap uses the Salesforce Bulk API to check the batch job status and retrieve the result for each record. The Snap sends the successful record writes to the output view and the failed record writes to the error view.

salesforce-poller.png

 

 

Support for Ultra Pipelines

Works in Ultra Task Pipelines.

Snap Views

View Type

View Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

View Type

View Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input

Document

  • Min: 1

  • Max: 1

  • Salesforce Delete

  • Mapper

This Snap has exactly one input view and receives documents in the view. Each document contains a Map data for the job ID (key: "jobId"),  batch ID (key: "batchId") and URL (key: "url"), and records of field-value pairs.

Output

Document

  • Min: 1

  • Max: 1

  • Copy

  • File Writer

This Snap has exactly one output view and produces documents in the view. Each document contains Map data that includes an object ID and records of the field-value pairs for the successful record write.

Error

Document

  • Min: 1

  • Max: 1

N/A

This Snap has one optional error view and produces documents in the view. Each document contains Map data that includes an object ID, records of the field-value pairs for the failed record write, and an error message.

Snap Settings

Field

Field Type

Description

 

Field

Field Type

Description

 

Label*

 

 

String

Specify a unique name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline.

Default Value:Salesforce Poller
ExampleSalesforce Poller

Polling interval*

 

 

String

Specify the polling interval in seconds for the Bulk API batch job execution. At each polling interval, the Snap checks the status of the Bulk API batch processing.

Default Value:5
Example5

Maximum value: 60 

Polling timeout*

 

 

String

Specify the polling timeout in seconds for the Bulk API batch job execution. If the timeout occurs while waiting to complete the batch job execution, the Snap displays an exception.

Default Value: 3000
Example: 300

The polling timer starts at the beginning of the pipeline execution, and NOT when the first document passes into the Salesforce Poller snap. The Polling Timeout includes waiting for the first document to pass into the Salesforce Poller Snap.

Number Of Retries

String/Expression

Specify the maximum number of retry attempts in case of connection failures (401/403 and 500 errors).

Default Value: 1
Example: 3

Minimum value: 0

Retry Interval (seconds)

String/Expression

Specify the minimum number of seconds for which the Snap must wait before attempting recovery from a network failure.

Default Value: 1
Example: 3

Minimum value: 0

Pass through

 

 

Checkbox

Select this checkbox to display input data fields as the top-level flatmap data merged with the response from SFDC in the output document.

If you deselect this checkbox, the output document contains only the SFDC response.

Default Value: Selected

Snap Execution

 

 

Dropdown list

Select one of the following three modes in which the Snap executes:

  • 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

Examples


Pipeline: Salesforce.com Data to a File: This pipeline reads data using a Salesforce read and writes it to a file.

The following pipeline shows how a Salesforce Create Snap creates an object record and the Salesforce Poller Snap is used to poll the status of the object creation action:   

In the pipeline execution:

  1. A JSON Generator provides object record details to create an object record. A Salesforce Create Snap creates the object record:


     

  2. The Salesforce Poller Snap receives the record creation details and provides the status of the create action: 


    Successful execution of the Snap gives the following preview:

     

  

Salesforce Poller pipeline with generic error output view

In this pipeline, the Salesforce Poller Snap polls the status from a delete action. The status of the invalid records are routed to the error view.

 
To the upstream Mapper Snap, pass the value of ID which is retrieved from the target schema of the Salesforce Delete Snap.

The Salesforce Delete Snap deletes the record 001i000001g41S9AAI from the object type Account


 The output preview from the Salesforce Delete Snap is as displayed below:


 The Salesforce Poller Snap checks the job status and retrieves the result. 

The output error view is displayed below:
Note that the ID 001i000001g41S9AAI is already deleted and hence the status routed to the output error view is displayed as ''entity is deleted''