Load Data Objects
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/loadHeaders
Section link for Headers| Name | Description |
|---|---|
Content-Type | application/json |
Accept | application/json |
Body Parameters
Section link for Body ParametersThe body of your request should be a JSON file containing the set of data objects to load.
| Name | Description |
|---|---|
object_typerequired | The type of data object to load. The following values are allowed:
|
objectconditional | If the object_type = vobjects__v, include the object name. For example, product__v. |
actionrequired | 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. |
filerequired | Include the filepath to reference the CSV load file on the file staging server. |
orderoptional | Specifies the order of the load task. |
idparamoptional | 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. |
recordmigrationmodeoptional | 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 |
documentmigrationmodeoptional | 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 |
Query Parameters
Section link for Query Parameters| Name | Description |
|---|---|
sendNotification | To 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. |
About File Validation
Section link for About File ValidationVault 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
Request
Section link for Requestcurl -X POST -H "Authorization: {SESSION_ID}" \
- H "Content-Type: application/json" \
--data-binary @"filename.json" \
https://myvault.veevavault.com/api/v23.1/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
}
]Response
Section link for Response{
"responseStatus": "SUCCESS",
"url": "/api/v23.1/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"
}
]
}Response Details
Section link for Response DetailsOn SUCCESS, the response includes the following information: