Bulk Create Document Templates
Upload from 1-500 document templates. To upload one document template, see Create Document Template.
POST
/api/{version}/objects/documents/templatesHeaders
Section link for Headers| Name | Description |
|---|---|
Content-Type | application/json or text/csv |
Accept | application/json (default) or application/xml |
File Upload
Section link for File UploadBefore submitting this request, you must upload the document template source files to the staging server. Then, in your JSON or CSV input, include the file parameter set to the {path/file_name} of each source file on the server.
Body Parameters
Section link for Body ParametersWhen creating document templates, the following fields are required in all Vaults:
| Name | Description |
|---|---|
name__v | The name of the new document template. If not included, Vault will use the specified label__v value to generate a value for the name__v field. |
label__v | The label of the new document template. This is the name users will see among the available binder templates in the UI. |
type__v | The name of the document type to which the template will be associated. |
subtype__v | The name of the document subtype to which the template will be associated. This is only required if associating the template with a document subtype. |
classification__v | The name of the document classification to which the template will be associated. This is only required if associating the template with a document classification. |
active__v | Set to true or false to indicate whether or not the new document template should be set to active, i.e., available for selection when creating a document. |
Example CSV Input
Section link for Example CSV Inputfile | name__v | label__v | type__v | subtype__v | classification__v | active__v |
|---|---|---|---|---|---|---|
| templates/doc_template_1.doc | site_document_template__c | SMF Template | site_master_file__v | true | ||
| templates/doc_template_2.doc | TMF Document Template | trial_master_file__v | true | |||
| templates/doc_template_3.doc | Trial Protocol Document Template | central_trial_documents__vs | trial_documents__vs | protocol__vs | true | |
| templates/doc_template_4.doc | Clinical Study Report Document Template | central_trial_documents__vs | reports__vs | clinical_study_report__vs | false |
In this example input, we're creating four new document templates in our Vault:
- We've included the
fileparameter with the path/name of four document template source files located in the "templates" directory of our Vault's staging server. - We've only specified the
name__vvalue for the first template and given it a differentlabel__vvalue. The other templates will inherit theirname__vvalues from thelabel__vvalues. - We've specified the document type, subtype, and classification to which each document template will be associated.
Request
Section link for Requestcurl -X POST -H "Authorization: {SESSION_ID}" \
-H "Content-Type: text/csv" \
--data-binary @"C:\Vault\Templates\add_document_templates.csv" \
https://myvault.veevavault.com/api/v17.2/objects/documents/templatesResponse
Section link for Response{
"responseStatus":"SUCCESS",
"data":[
{
"responseStatus":"SUCCESS",
"name":"site_document_template__c"
},
{
"responseStatus":"SUCCESS",
"name":"tmf_document_template__c"
},
{
"responseStatus":"SUCCESS",
"name":"trial_protocol_document_template__c"
},
{
"responseStatus":"FAILURE",
"errors":[
{
"type":"INVALID_DATA",
"message":"Error message describing why this template was not created."
}
]
}
]
}Response Details
Section link for Response DetailsIn this example:
- The input file format is set to CSV.
- The response format is not set and will default to JSON.
- The path/name of the CSV input file in our local directory is specified.