Skip to content

Create a loader job and load a set of data files. You can load a maximum of 10 data objects per request.

POST/api/{version}/services/loader/load
NameDescription
Content-Typeapplication/json
Acceptapplication/json

The body of your request should be a JSON file containing the set of data objects to load.

NameDescription
object_type
required
The type of data object to load. The following values are allowed:
  • vobjects__v
  • documents__v
  • document_versions__v
  • document_relationships__v
  • groups__v
  • document_roles__v
  • document_versions_roles__v
  • document_renditions__v
  • document_attachments__v
object
conditional
If the object_type = vobjects__v, include the object name. For example, product__v.
action
required
The action type to create, update, upsert, or delete data objects. If the object_type=vobjects__v, the action types create_attachments, delete_attachments, assign_roles, and remove_roles are also available.
file
required
Include the filepath to reference the CSV load file on the file staging server.
order
optional
Specifies the order of the load task.
idparam
optional
Identify object records by any unique field value. Can only be used if object_type is vobjects__v and action is upsert, update, or delete. You can use any object field which has unique set to true in the object metadata. For example, idParam=external_id__v.
recordmigrationmode
optional
Set to true to create or update object records in a specific state or state type for objects with lifecycles. If not specified, records will be created in their initial state. The recordmigrationmode parameter can only be used if object_type is vobjects__v and action is create, update, or upsert. You must have the Record Migration permission to use this parameter.
documentmigrationmode
optional
Set to true to create documents, document versions, document version roles, or document renditions in a specific state or state type. Also allows you to set the name, document number, and version number. For update actions, only allows you to manually reset document numbers. You must have the Document Migration permission to use this parameter. Learn more about Document Migration Mode in Vault Help.
NameDescription
sendNotificationTo send a Vault notification when the job completes, set to true. If omitted, this defaults to false and Vault does not send a notification when the job completes.

Vault evaluates header rows in CSV load files to ensure they include all required fields. Required fields vary depending on the object_type and action. Learn more about Vault Loader input files for documents, document roles, document attachments, objects, and object attachments in Vault Help.

curl -X POST -H "Authorization: {SESSION_ID}" \ - H "Content-Type: application/json" \ --data-binary @"filename.json" \ https://myvault.veevavault.com/api/v23.2/services/loader/load
[ { "object_type": "documents__v", "action": "create", "file": "documents.csv", "documentmigrationmode": true, "order": 1 }, { "object_type": "vobjects__v", "object": "veterinary_patient__c", "action": "create", "file": "patients.csv", "recordmigrationmode": true, "order": 2 }, { "object_type": "vobjects__v", "object": "product__v", "action": "upsert", "file": "products.csv", "order": 3, "idparam": "external_id__v" }, { "object_type": "groups__v", "action": "update", "file": "groups.csv", "order": 4 } ]
{ "responseStatus": "SUCCESS", "url": "/api/v23.2/services/jobs/92201", "job_id": 92201, "tasks": [ { "task_id": "1", "object_type": "documents__v", "action": "create", "documentmigrationmode": true, "file": "documents.csv" }, { "task_id": "2", "object_type": "vobjects__v", "object": "veterinary_patient__c", "action": "create", "recordmigrationmode": true, "file": "patients.csv" }, { "task_id": "3", "object_type": "vobjects__v", "object": "product__v", "action": "upsert", "idparam": "external_id__v", "file": "products.csv" }, { "task_id": "4", "object_type": "groups__v", "action": "update", "file": "groups.csv" } ] }

On SUCCESS, the response includes the following information: