File: Bulk Data Loader
This reference explains the File: Bulk Data Loader task.
Use the File: Bulk Data Loader task to run Zuora Bulk Data Loader jobs from a workflow. The task calls the Bulk Data Loader APIs to create a bulk job, upload a file to the pre‑signed S3 URL, submit the job, poll for completion, and then download and process the result files.
The task:
Takes an input file from the workflow data payload (for example, a file produced by an upstream export task).
Creates and submits a Bulk Data Loader job with the configuration you specify.
Polls the Bulk Data Loader job status until it reaches a terminal state.
Downloads the source, success rows, and error rows files after the job completes, and attaches them to the workflow.
Writes a
BulkDataLoaderobject into the workflow data payload with job details and result metadata.
The task appears under the File category in the workflow designer and is treated as a file‑related polling task.
Execution flow
When a workflow run reaches this task, it performs the following steps in order, generally following the same steps referenced here.
Create a Bulk Data Loader job using the configuration parameters you define in the task.
Upload the input file to S3 using the pre‑signed URL returned by the job creation step.
Submit the job for processing.
Poll the Bulk Data Loader job summary until the job reaches a terminal status (Completed, Failed, Aborted, or Cancelled).
If the job is Completed, retrieve the download links for the source, success rows, and error rows files.
Download and attach the result files to the workflow, and add parsed success and error rows into the workflow data.
Evaluate task success or failure based on the job status and the Fail task if any records fail setting.
Write the final job information into the
BulkDataLoaderobject in the workflow data payload and continue along the Success path.
Status handling
The task uses Bulk Data Loader job status to control polling and failure behavior:
Polling continues while the job status is one of Submitted, In Progress, or Aborting.
The task fails immediately if the job status becomes Failed.
When the job status is Completed:
If Fail task if any records fail is true and
rowsFailed > 0, the task fails.If Fail task if any records fail is false, the task succeeds even if some rows failed.
Aborted and Cancelled job statuses are treated as successful for the workflow and do not cause the task to fail.
Input
The task expects a file object in the workflow data payload:
Object identifies the file object in the
Filesdata structure that should be used for the Bulk Data Loader job.If the specified file is a ZIP file, the task automatically extracts the first entry before uploading it to the Bulk Data Loader S3 URL.
If the file is not found in Files for the specified object name, the task fails with an error.
Output
After the task completes, it updates the workflow data as follows:
Files object:
Adds file references for the source file, success rows file, and error rows file created by the Bulk Data Loader job.
BulkDataLoader object:
jobId: The Bulk Data Loader job ID.jobSummary: The final job summary returned by the Bulk Data Loader summary API.downloadLinks: The URLs returned by the Bulk Data Loader downloads API.successRows: Parsed records from the success rows file (if available).errorRows: Parsed records from the error rows file (if available).
You can use these data objects and file references in downstream tasks for additional processing, notifications, or audit.