Skip to main content

Veeva Vault Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow data flow that sends data to a Veeva Vault location.
veeva_vault_api.png

Veeva Vault

Create a Veeva Vault Destination

  1. Click the + icon on the Nexset that will be sent to the Veeva Vault destination, and select the Send to Destination option from the menu.

  2. Select the Veeva Vault connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Veeva Vault instance, and click Next; or, create a new Veeva Vault credential for use in this flow.

  3. In Nexla, Veeva Vault destinations can be created using pre-built endpoint templates, which expedite destination setup for common Veeva Vault write operations. Each template is designed specifically for the corresponding Veeva Vault endpoint, making destination configuration easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    Veeva Vault destinations can also be configured manually, allowing you to send data to Veeva Vault endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Veeva Vault write endpoints. Each template is designed specifically for the corresponding Veeva Vault endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

    Create Document

    Creates a new document in the Vault. The document metadata — such as type, subtype, classification, lifecycle, name, and required fields — must be included in the Nexset data being sent to this destination. Use this endpoint when you need to programmatically create documents in Vault from external systems or data flows.

    • Optionally, enter an API version string in the API Version field to target a specific Vault API version (e.g., v25.3). The default is v25.3.
    • The Nexset data will be sent as a JSON body to the Vault Documents API. Each record in the Nexset should represent a document to be created, with fields matching the required and optional document properties in your Vault (e.g., name__v, type__v, lifecycle__v, title__v).

    Newly created documents will be in the Initial state of the configured document lifecycle. Required document fields depend on your Vault's document type configuration. Refer to your Vault Administrator or the Veeva Vault API Reference for the required fields for each document type.

    Update Document

    Updates the metadata and properties of an existing document in the Vault. Use this endpoint to modify document fields such as title, description, owner, status, or any other editable document attribute. The document itself (i.e., the file content) is not changed — only its metadata is updated.

    • Enter the document ID of the document to update in the Document ID field. This field is required. The document ID is the unique numeric identifier of the target document in Vault.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the document fields to be updated as key-value pairs. Only the fields included in the payload will be updated — fields not included will retain their existing values.

    Reclassify Document

    Reclassifies a document to a different document type, subtype, or classification. In Veeva Vault, document classification determines the document's available fields, lifecycle, and behavior. Reclassification changes the type-based attributes of the document without creating a new version. Use this endpoint when a document's classification needs to be corrected or updated to align with regulatory or operational requirements.

    • Enter the document ID of the document to reclassify in the Document ID field. This field is required.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the new classification fields. Reclassification typically requires specifying the new type__v, subtype__v, and classification__v values, along with any required fields for the new classification:

      • type__v — The API name of the new document type
      • subtype__v — The API name of the new document subtype (if applicable)
      • classification__v — The API name of the new classification (if applicable)

    Reclassification may change required fields and lifecycle assignments. Ensure that all fields required by the new classification are included in the payload. Refer to your Vault Administrator for the correct classification values.

    Update Document Version

    Updates the metadata of a specific version of a document. Use this endpoint when you need to update fields on a particular historical version of a document rather than the latest version.

    • Enter the document ID in the Document ID field. This field is required.
    • Enter the major version number in the Major Version field. This field is required.
    • Enter the minor version number in the Minor Version field. This field is required.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the document version fields to be updated as key-value pairs.

    Create Single Document Version

    Creates a new version of an existing document. In Veeva Vault, creating a new document version allows you to add a superseding version while preserving the document's history. Use this endpoint when you need to programmatically create a new draft version of an existing document.

    • Enter the document ID of the document for which a new version will be created in the Document ID field. This field is required.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the metadata and file reference for the new version.

    Delete Single Document Attachment

    Deletes a document attachment from a specific document. Use this endpoint to remove attachments that are no longer needed. Deletion is permanent — deleted attachments cannot be recovered unless your Vault configuration includes attachment version history.

    • Enter the document ID in the Document ID field. This field is required.
    • Enter the attachment ID in the Attachment ID field. This field is required. The attachment ID uniquely identifies the specific attachment to be deleted.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.

    :::warning Important Attachment deletion is permanent. Verify that the correct attachment ID is specified before executing this operation. Consider testing with a non-production Vault instance first. :::

    Delete Single Document Attachment Version

    Deletes a specific version of a document attachment. Use this endpoint when you need to remove a particular version of an attachment while preserving other versions.

    • Enter the document ID in the Document ID field. This field is required.
    • Enter the attachment ID in the Attachment ID field. This field is required.
    • Enter the attachment version number in the Attachment Version field. This field is required.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.

    Create Document Attachment

    Creates a new attachment on a document. Attachments are supplementary files linked to a document record, such as supporting evidence, reference materials, or related files. Use this endpoint to programmatically add attachments to existing documents in Vault.

    • Enter the document ID in the Document ID field. This field is required. The attachment will be linked to the specified document.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the file content or reference for the attachment to be created.

    Restore Document Attachment Version

    Restores a previously deleted version of a document attachment. Use this endpoint when an attachment version was deleted in error and needs to be recovered.

    • Enter the document ID in the Document ID field. This field is required.
    • Enter the attachment ID in the Attachment ID field. This field is required.
    • Enter the attachment version number to restore in the Attachment Version field. This field is required.
    • The Restore Flag field defaults to true and does not need to be changed for standard restore operations.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.

    Update Binder

    Updates the metadata of an existing binder. Binders in Veeva Vault are containers that organize related documents into a hierarchical structure. Use this endpoint to update binder properties such as name, description, owner, or other configurable metadata fields.

    • Enter the binder ID in the Binder ID field. This field is required. Binder IDs can be obtained from the Retrieve All Binders source endpoint or from VQL queries against the binders object.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the binder fields to be updated as key-value pairs.

    Create & Upsert Object Records

    Creates new records or updates existing records in a Vault object. This endpoint supports both create and upsert operations. An upsert will update a record if it already exists or create it if it does not, based on a configured external ID field. Use this endpoint to synchronize records from external systems into Vault objects such as products, studies, sites, or custom business objects.

    • Enter the API name of the Vault object in the Object Name field. This field is required. For example, use product__v to create or upsert records in the Product object, or study__v for the Study object. Custom objects use the __c suffix.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the object record fields as key-value pairs. Field API names follow Vault naming conventions — standard fields use the __v suffix (e.g., name__v, status__v) and custom fields use __c.

    For upsert operations, include the external ID field and its value in the payload. Your Vault Administrator can confirm which field is configured as the external ID for the target object.

    Update Object Records

    Updates existing records in a Vault object. Use this endpoint when you need to modify field values on existing object records, such as updating the status, owner, or other editable fields of products, studies, sites, or custom records in Vault.

    • Enter the API name of the Vault object in the Object Name field. This field is required (e.g., product__v, study__v).
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the record ID (id) and the fields to be updated for each record. Only fields included in the payload will be modified.

    Create Group

    Creates a new user group in the Vault instance. Groups in Veeva Vault are used to manage user access and permissions by assigning roles and security profiles to collections of users. Use this endpoint to programmatically create groups as part of user provisioning or access management workflows.

    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the group properties. Common fields for group creation include:

      • label__v — The display name of the group
      • active__v — Whether the group is active (true or false)
      • allow_delegation_among_members__v — Whether delegation is allowed among group members

    Update Group

    Updates an existing user group in the Vault instance. Use this endpoint to modify group properties such as the group name, active status, or membership settings.

    • Enter the group ID in the Group ID field. This field is required. The group ID is the unique numeric identifier of the group in Vault.
    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data should include the group fields to be updated as key-value pairs.

    Load Data Objects

    Submits a bulk load job to create or update multiple records in Vault objects via a CSV multipart upload. The Vault Loader API is designed for high-volume data operations and is more efficient than individual record API calls when loading large numbers of records. Use this endpoint when you need to bulk-load data into Vault objects as part of a data migration or large-scale integration.

    • Optionally, update the API Version field if your Vault requires a version other than the default v25.3.
    • The Nexset data is sent as a multipart/form-data request. The payload should be structured according to the Vault Loader API specification, which requires a CSV file containing the records to be loaded along with metadata about the target object and operation type.

    The Vault Loader API processes jobs asynchronously. After submitting the load job, use the Vault API to check the job status and retrieve results. Refer to the Veeva Vault API Reference for full Loader API documentation.

Configure Manually

Veeva Vault destinations can be manually configured to send data to any valid Veeva Vault API endpoint.

Using manual configuration, you can also configure Nexla to automatically send the response received from the Veeva Vault API after each call to a new Nexla webhook data source.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Veeva Vault API from the Method pulldown menu. Common methods for Veeva Vault destination operations include:

    • POST: For creating new documents, object records, groups, or attachment records
    • PUT: For updating existing documents, document versions, binders, or object records
    • DELETE: For removing attachments or attachment versions

Data Format

  1. Select the format in which the Nexset data will be sent to the Veeva Vault API from the Content Format pulldown menu. Veeva Vault API endpoints generally accept JSON (application/json) for document metadata and object record operations. Nexla will automatically convert the data to the selected format for each API call.

The Vault Loader endpoint uses multipart/form-data for CSV-based bulk operations. For most document and object operations, use JSON format.

API Endpoint URL

  1. Enter the URL of the Veeva Vault API endpoint to which you want to send the Nexset data in the URL field. Veeva Vault API URLs follow the pattern https://{'{vault_dns}'}/api/{'{version}'}/{endpoint_path}. For update operations, include the ID of the resource to be updated at the end of the URL — for example, https://mycompany.veevavault.com/api/v25.3/objects/documents/12345 to update document 12345.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include the Authorization header — it is automatically handled by the Veeva Vault credential configuration.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Veeva Vault destination, select the attributes from the Exclude Attributes pulldown menu.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings.

Response Webhook

Optional

Nexla can automatically send the response received from the Veeva Vault API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call and any additional information returned after each call — for example, newly assigned document IDs or job status responses from bulk load operations.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Veeva Vault API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.
  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing (Manual Configuration)

After all endpoint settings have been configured, Nexla can send a test payload to the Veeva Vault API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the Veeva Vault API using the current settings.

Save & Activate the Destination

  • Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To begin sending data to the configured Veeva Vault endpoint, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to the Veeva Vault endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.