Skip to content

We've created sample code for various use cases. Feel free to use these as starting points for your own custom Vault extensions.

These projects are available at the Veeva GitHub™.

If you need help, please join Vault for Developers on Veeva Connect.

ProjectDescription
Service BasicsServices demonstrated in this project include:
  • RecordService
  • QueryService
  • HTTPService
    • Local
    • External
    • Vault to Vault
User-Defined ServiceUse cases in this project include:
  • User-defined class usage
  • Field validation
  • Updating object record fields
  • UserDefinedService usage
    • Why use a user-defined service
    • User-defined service use cases
    • Locating and using user-defined services
User-Defined ModelUse cases in this project include:
  • User-defined model creation and usage
  • Vault to Vault Connections
  • UserDefinedModel usage
    • Why use user-defined models
    • Using user-defined models with HTTPService
    • Using user-defined models with JsonService
    • Using user-defined models with QueryService
Object RecordsUse cases in this project include:
  • Field defaulting
  • Field validation
  • Required fields
  • Create related records
  • Initialize workflows
  • Update roles
DocumentsUse cases in this project include:
  • Update fields on related documents
  • Create related object records
  • Send notifications
Doctype TriggersUse cases in this project include:
  • Doctype trigger to prevent document names that start with lowercase characters
  • Doctype trigger to add a default value to a document field
  • Doctype trigger to start a job whenever a document field changes
Job ServiceUse cases in this project include:
  • Bulk Object Record updates
  • Custom Job Processor Usage
    • Why use custom job processors
    • Use cases in which custom job processors can help
    • Creating custom job processors
Translation ServiceUse cases in this project include:
  • Message Catalog usage
  • Bulk Translation export and import
  • Field validation
  • TranslationService usage
    • Fetching messages in a message group
    • Fetching translated message
    • Using translated message for error text
Vault to Vault using Integration RulesDemonstrates the use of Spark Messaging to move and mapping data from a source Vault to a target Vault:
  • Spark message with "Poke and Pull" transaction processing
  • Using Integrations, Integration Points, and User Exceptions
  • Mapping field data using Integration Rules and Reference Lookups
Vault to Vault Document CopyDemonstrates copying a document from a source Vault to a target Vault:
  • Spark Message initiated from a Document Lifecycle State Change
  • Creating a new document by reusing an existing document’s source file, attachments, and renditions
  • Creating new versions of existing documents
External IntegrationDemonstrates the use of Spark messaging to move data from a source Vault to an external AWS™ system:
  • Creating an AWS™ application
  • External Spark message format
  • Receiving and processing an external Spark message

We've created the following tools to assist developers in utilizing the Vault Java SDK.

ToolDescription
Maven PluginProvides commands to package, validate, import, and deploy Vault Java SDK source code through the use of Maven build goals.
Vault Log AnalyzerA command line tool that simplifies the process of analyzing Vault API and Vault Java SDK logs.