Data Model
The CData MCP Server for Vault CRM models Vault CRM objects as relational views. A Vault CRM object has relationships to other objects; in the views, these relationships are expressed through foreign keys. The following sections show the static endpoints of the Vault CRM API.
However, the rest of the views are dynamically determined, using the metadata exposed on the Vault CRM API. All vault objects are exposed by the server. However, the server only lists views for which it can determine all available columns at design time. Examples of Veeva objects available with the CData MCP Server for Vault CRM but not displayed in the help include:
- Documents (Query the available documents, VQL is used when possible for this object.)
- Users (Query the existing users, VQL is used when possible for this object.)
- Groups (Query the existing groups, VQL is used when possible for this object.)
- Vault Objects (Query any vault object on its own view. VQL is always used to query Vault Object's views.)
Tables
The Tables section details standard SQL tables, while the Views section lists read-only SQL tables.
Frequently used tables include:
| Table | Description |
| Accounts | Customer account records, such as profile information and metadata for Customer Relationship Management (CRM) processes. |
| Addresses | Stores postal addresses for accounts or Healthcare Professionals (HCPs), supporting mailing and territory assignment. |
| Users | Metadata for Vault CRM users includes identifiers, authentication details, and role mappings. |
| Calls | Table documenting key details of sales rep field calls, including participants, location, channel, and outcomes. |
| KeyMessages | Stores marketing and medical content for compliant, targeted messaging in closed-loop marketing systems. |
| MultichannelActivities | Captures marketing, sales, and digital interactions across multiple channels. |
| Territories | Tracks areas assigned to field teams or sales representatives to aid in planning and resource alignment. |
| Group | Shows Vault CRM user groups used for access control and content targeting. |
| Products | Stores key product data like names, IDs, active ingredients, and therapeutic areas. |
| CallClickstreams | Records user interactions during calls, showing how they click and engage with digital content. |
| AccountTerritories | Maps sales areas to specific accounts, organizing staff and aligning regional strategies. |
| ConsentLines | Records user consent for marketing, including method and timestamp. |
| EventAttendees | Keeps track of each user's or stakeholder's agreement for marketing or communication activities. |
| EmailActivity | Logs email communications sent through Vault CRM, including timestamps and recipients. |
| ApprovedEmailSettings | Contains metadata about approved configuration settings related to Vault CRM. |
| Countries2 | Stores country codes and names used across Vault CRM applications. |
| UserRoleSetup | Links users to roles for managing permissions, access control, and task assignments. |
| Users | Contains metadata about users, which includes system identifiers and their preferences. |
| PicklistValues | Lists all predefined options used across metadata fields. |
| Integrations | Outlines how Vault CRM communicates with external systems, including protocols, authentication methods, and integration status. |
Stored Procedures
Stored Procedures are SQL scripts that extend beyond standard CRUD operations. They accept parameters, execute functions, and return data from the service, indicating success or failure.
About Veeva Vault Query
Veeva Vault Query (VQL) is a query language similar to SQL. It is available to use via the Vault CRM API. When the query can be handled server-side,
the provider transforms SQL to VQL and sends it to Vault CRM. Optimizing in this way decreases the execution time, since the filtering is done
server-side.
If you set the QueryPassthrough connection property to True, the server executes VQL queries directly against the Vault CRM API.