We are pleased to bring you the following additions and enhancements to Developer Portal features in 25R3.
Service Announcements are changes that may affect existing integrations. Organizations should assess these features against their existing integrations and make updates where necessary.
Release Date: 25R3 Wave 1; November 21, 2025
In 25R3, Veeva will migrate from the DigiCert Legacy Root Certificate to the DigiCert G2 Root Certificate for signing Vault SSL Certificates. This is to align with DigiCert and Mozilla’s end of life for the Legacy Root Certificate in April 2026. Customers with integrations built on Java 1.7 and below may be affected, and are encouraged to evaluate their integrations for G2 certificate support.
Release Date: August 22, 2025
TLS 1.3 is now supported on Legacy FTPS connections. New integrations should use File Staging API.
Release Date: August 22, 2025
For documents created using Vault API or Vault Java SDK, field validation will now take place after any existing Event Actions. Previously, validation occurred before Event Actions were invoked, preventing document creation if an empty mandatory field was intended to be populated by an Event Action.
Release Date: August 22, 2025
Integrations can now retrieve the Spark signing certificate from Vault API without a Vault session ID. This allows developers to build integrations that can accept a Spark message and verify the signature without needing authenticated access to Vault. This change applies to all Vault API versions prior to and after v25.3.
Release Date: August 22, 2025
We are pleased to bring you the following additions and enhancements to Developer Portal features in 25R2.2.
Release Date: August 22, 2025
Label Sets allows alternative labels to be displayed in the Vault UI within a single language to support use cases where different groups of users within a given country or region may have different terminology. Learn more about the user and Admin-facing functionality of this feature in Vault Help.
Developers can create new Labelset configurations using MDL, and integrations can import and export labels for the label sets using Vault API.
POST /api/{version}/messages/{message_type}/label_set/{name}/actions/export
Release Date: August 22, 2025
Vault Admins can now configure workflow steps that execute a specified job. Jobs can be configured to automatically complete the job step once the job has finished, or developers can use the WorkflowInstanceService to complete the job task. This allows admin and developers to build asynchronous steps into their workflows. Developers can also use Spark and HTTP Callout to execute logic externally, and use the new Complete Workflow Job Step API to complete the workflow task. Additionally, workflow job steps can be queried using VQL to obtain relevant details about the job step.
Direct Data API now includes inactive object fields in Full and Incremental file extracts. This allows developers to load historic Vault data into their downstream systems.
Direct Data API now includes integration-focused attributes in object audit trails, including object and field API names, old and new API values, and audit group IDs. These new attributes can be used to join audit records to data records in downstream systems.
Direct Data API now includes all queryable document fields. The additional fields will be included in the Full and Incremental files created after the 25R3 release.
Direct Data API is built for resiliency and will automatically retry when errors occur. The Vault Admin UI no longer displays job operations for Direct Data API, and the jobs are excluded from VQL targets. Admins and developers can determine success and retry status using the Retrieve Available Direct Data Files endpoint.
The Export Documents and Export Document Versions endpoints now support exporting document text in bulk. When developers include text=true
in their API request, Vault creates a “text” folder containing a text file (text_file.txt
) with the extracted text for each exported document version.
Vault API now returns the major and minor version of new document versions created using the Create Single Document Version endpoint and the file
body parameter. This new document metadata is only available for Vault API v25.3+.
Veeva Quality now supports creating Quality Team members for migration purposes. A new endpoint has been introduced that accepts the object record’s external ID, the user name, and API name for the team role to be added. Vault API now supports creating these configurations in bulk, and performs the operations asynchronously. The creation of the team members is optimized for performance.
Developers can now cancel jobs in Scheduled, Queued, or Queueing state using Vault API. Not all Queued or Queueing jobs can be cancelled and cancellation is best-effort. Vault API will return errors for jobs that cannot be cancelled.
The system-provided Vault Owners group now allows editing the Delegate access allowed only among group members configuration. Developers can use Vault API to change the value of this attribute.
Query Describe for SDK now supports SHOW
statements. This allows developers to inspect the data types and labels of query targets.
The TODISPLAYFORMAT()
function in VQL now reflects how data is displayed in Vault UI, even for text and number fields without format masks configured. This can ensure consistency between data retrieved via VQL queries and the visual representation for number fields in Vault UI.
The FIND
clause has been enhanced to support using the scope modifier on relationships from the SELECT
clause.
SELECT id, product__vr.name__v
FROM study__v
FIND ('Trial' SCOPE product__vr.name__v)
Additionally, the FIND
clause can now be used in subqueries. Note: the FIND
clause is not supported on attachment subqueries.
SELECT id, (SELECT name__v from study__vr FIND ('US'))
FROM product__v
SELECT id
FROM product__v
WHERE id IN (SELECT id FROM study__vr FIND ('US'))
Developers can now inspect all metadata for document fields using Vault Java SDK. This allows developers to build logic based on Docfield attributes such as min/max length for Strings and min/max values for Numbers.