Vault Loader: Create, Update & Delete Object Records

Vault Loader allows you to perform bulk Create, Update, and Delete actions on object records within your vault. Loader also provides an Upsert action that lets you create new records and update existing records using a single CSV input. You can also create and update users with the User and Person objects.

How to Load Object Records

Before loading object records, prepare the CSV input file containing object record field names and values.

To load object records:

  1. In the left panel of the Loader tab, click Load.
  2. For the CSV File, click Choose and select the CSV input file.
  3. In the Object Type drop-down, select the object on which to perform bulk actions.
  4. In the Action Type drop-down, select Create, Update, Upsert, or Delete.
  5. Click Start Load.

Before processing this request, Vault validates the selected CSV file. If the file is valid, Vault begins processing the request. When finished, you’ll receive a Vault notification and email with the request details and CSV output files.

How to Delete Object Records

To delete with Vault Loader, you will upload a CSV input file that lists the records you wish to delete. CSVs for delete actions only require the ID field. The rest of the process works as described in How to Load Object Records. Note that you cannot delete User object records, but you can make user accounts inactive. To do this, use the Update action type and set the status__v field to inactive in your input file. This deactivates the user on the current vault.   

Cascade Delete

When deleting records for certain objects, Vault can “cascade” delete an entire hierarchy of related records. When deleting records for an object that uses the cascade deletion setting, you can only delete one record (and it’s related records) in a single load.

Preparing CSV Input Files

Fields vary between objects. The following list includes the fields that are always or usually required, as well as several sample fields that cover the different field types. We recommend using Loader to extract column headers and basing your CSV input on that file.

Column Header Field Example Value Notes
id ID 00P000000000101 Required for updating or deleting records. In update and delete actions, this is required for all rows. In upsert actions, you can leave this blank for new records but must fill it in for existing records.
name__v Name WonderDrug Required for record creation unless the object uses auto-naming.
object_type__v Object Type 00P000000000304 Sets the object type using the object field name as the column header and the ID value of the record; if left blank, the object record will use the “base” type, for example, Base Product.
object_type__vr.api_name__v Object Type > Name Pharmaceutical Sets the object type using the relationship name (object_type__vr) plus object field name (name__v) as the column header and the object type name value; if left blank, the object record will use the “base” type, for example, Base Product.
campaign__c Campaign 00P000000000101 References an object record using the object field name (campaign__c) as the column header and the ID value of the record. You can reference an object record using any object field for which the value must be unique, as in the examples below. Do not include more than one column header for each object reference.
campaign__c.name__v Campaign > Name Rise Above References an object record using the object field name (campaign__c) plus object field name (name__v) as the column header.
family__c Product Family (picklist) Wonder References a picklist option using the picklist value name (not label).
generic_avail__c Generic Available FALSE Indicates “No” for a Yes/No type field.
date_approved__c Date Approved 2017-01-29 Dates must be formatted as YYYY-MM-DD.
datetime_approved__c DateTime Approved 2017-08-04T19:53:00.000Z DateTime values must be formatted as {YYYY-MM-DD}T{HH:MM:SS.SSS}Z and use 24-hour time. Time must be in UTC, not in your time zone. DateTimes must end with the .000Z UTC expression; the zeros may be any number.
Name Field Example Value Notes
email__sys Email The user’s email address.
first_name__sys First Name Elaine The user’s first name.
last_name__sys Last Name Woodhouse The user’s last name.
username__sys User Name The user’s vault username (login credential). For example,
language__sys Language 0LU000000000101 The user’s preferred language.
locale__sys Locale 0LO000000000104 The user’s location.
timezone__sys Timezone america_los_angeles__sys The user’s time zone.
license_type__sys License Type full__v Optional: The user’s license type. If omitted, default value is full__v.
security_profile__sys Security Profile 0SP000000000106 The user’s security profile. For example, Vault Owner.
status__v Status active__v The status of the user.

See example inputs:

File Validation

Before beginning the Vault Loader job, Vault checks that the selected CSV file meets certain criteria:

  • Includes at least one record
  • Includes a valid header row (Invalid header rows are those with no columns that match to metadata for the records you’re loading or those with extra empty columns.)
  • Total number of records in the vault, plus new records created by the CSV, would not exceed your vault’s limits

If your file is not valid, Vault displays a notification, stops the process, and allows you to select a new CSV file. If some of the header columns do not match metadata for your vault, the notification will allow you to stop the load or ignore those columns and proceed.