veeva · JSON Structure

Veeva Vault Document Structure

A document record in the Veeva Vault platform — a controlled document with lifecycle, version, and audit trail

Type: object Properties: 22 Required: 5

Veeva Vault Document is a JSON Structure definition published by veeva, describing 22 properties, of which 5 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

id name__v type__v subtype__v classification__v lifecycle__v status__v document_number__v major_version_number__v minor_version_number__v created_by__v last_modified_by__v created_date__v last_modified_date__v description__v size__v format__v external_id__v owner__v approver__v effective_date__v expiration_date__v

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/veeva/refs/heads/main/json-structure/veeva-vault-document-structure.json",
  "name": "Veeva Vault Document",
  "description": "A document record in the Veeva Vault platform \u2014 a controlled document with lifecycle, version, and audit trail",
  "type": "object",
  "properties": {
    "id": {
      "type": "int32",
      "description": "Unique Vault document ID"
    },
    "name__v": {
      "type": "string",
      "description": "Document name (required)"
    },
    "type__v": {
      "type": "string",
      "description": "Document type API name (e.g., study_protocol__c)"
    },
    "subtype__v": {
      "type": "string",
      "description": "Document subtype API name"
    },
    "classification__v": {
      "type": "string",
      "description": "Document classification API name"
    },
    "lifecycle__v": {
      "type": "string",
      "description": "Document lifecycle API name (controls allowed states and actions)"
    },
    "status__v": {
      "type": "string",
      "description": "Current lifecycle state API name"
    },
    "document_number__v": {
      "type": "string",
      "description": "Auto-generated document number"
    },
    "major_version_number__v": {
      "type": "int32",
      "minimum": 0,
      "description": "Major version number (increments on approval)"
    },
    "minor_version_number__v": {
      "type": "int32",
      "minimum": 0,
      "description": "Minor version number (increments on draft revisions)"
    },
    "created_by__v": {
      "type": "int32",
      "description": "User ID of document creator"
    },
    "last_modified_by__v": {
      "type": "int32",
      "description": "User ID of last modifier"
    },
    "created_date__v": {
      "type": "datetime",
      "description": "Document creation timestamp"
    },
    "last_modified_date__v": {
      "type": "datetime",
      "description": "Last modification timestamp"
    },
    "description__v": {
      "type": "string",
      "description": "Document description"
    },
    "size__v": {
      "type": "int32",
      "minimum": 0,
      "description": "Source file size in bytes"
    },
    "format__v": {
      "type": "string",
      "description": "MIME type of source file (e.g., application/pdf)"
    },
    "external_id__v": {
      "type": "string",
      "description": "External system identifier for integration"
    },
    "owner__v": {
      "type": "int32",
      "description": "User ID of document owner"
    },
    "approver__v": {
      "type": "int32",
      "description": "User ID of document approver"
    },
    "effective_date__v": {
      "type": "date",
      "description": "Date document becomes effective (approved state)"
    },
    "expiration_date__v": {
      "type": "date",
      "description": "Document expiration date"
    }
  },
  "required": [
    "id",
    "name__v",
    "type__v",
    "lifecycle__v",
    "status__v"
  ],
  "additionalProperties": {
    "description": "Custom field values (API names ending in __c)"
  }
}