data update bulk

Bulk update records to an org from a CSV file. Uses Bulk API 2.0.

You can use this command to update millions of Salesforce object records based on a file in comma-separated values (CSV) format.

All the records in the CSV file must be for the same Salesforce object. Specify the object with the --sobject flag. The first column of every line in the CSV file must be an ID of the record you want to update. The CSV file can contain only existing records; if a record in the file doesn’t currently exist in the Salesforce object, the command fails. Consider using “sf data upsert bulk” if you also want to insert new records.

Bulk updates can take a while, depending on how many records are in the CSV file. If the command times out, the command displays the job ID. To see the status and get the results of the job, run “sf data update resume” and pass the job ID to the –job-id flag.

For information and examples about how to prepare your CSV files, see “Prepare Data to Ingest” in the “Bulk API 2.0 and Bulk API Developer Guide” (https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/datafiles_prepare_data.htm).

Flag Name (Long)Flag Name (Short)Description
‑‑api‑versionN/AType: Value

Override the api version used for api requests made by this command
‑‑column‑delimiterN/AType: Value
Valid Values: BACKQUOTE, CARET, COMMA, PIPE, SEMICOLON, TAB

Column delimiter used in the CSV file.
‑‑file‑fType: Value
Required

CSV file that contains the Salesforce object records you want to update.
‑‑flags‑dirN/AType: Value

Import flag values from a directory.
‑‑jsonN/AType: Boolean

Format output as json.
‑‑line‑endingN/AType: Value
Valid Values: CRLF, LF

Line ending used in the CSV file. Default value on Windows is CRLF; on macOS and Linux it’s LF.
‑‑sobject‑sType: Value
Required

API name of the Salesforce object, either standard or custom, which you are updating.
‑‑target‑org‑oType: Value
Required

Username or alias of the target org. Not required if the target-org configuration variable is already set.
‑‑wait‑wType: Value

Time to wait for the command to finish, in minutes.

Update Account records from a CSV-formatted file into an org with alias “my-scratch”; if the update doesn’t complete in 10 minutes, the command ends and displays a job ID: