Uploading CLM Content via FTPS
Content admin users can upload key messages directly into Vault CRM via FTPS, which allows for bulk load of multiple files at a time. Content can be loaded using any FTPS client (for example, Filezilla).
Content admin users must manually create clm_presentation__v and clm_presentation_slide__v records in Vault CRM associated with the key message records uploaded via FTPS.
Who can use this feature?
- Browser Users
- Users do not require an additional license
- Admin Users, Content Admin Users
Setting Up the Content Server as

Use the following instructions to allow a user to log in to the FTPS server using their CRM username and password:
- Navigate to Admin > Configuration > Objects > User > Layouts.
- Select the appropriate user__sys layout.
- Ensure the content_admin__v field is on the layout.
- Select Save.
- Navigate to Business Admin > Objects > Users.
- Edit the user__sys record for the user who you want to have FTPS credentials.
- Select the Content Admin check box.
- Select Save.
- Sign in to the FTPS server (using the FTPS client) with the content admin user's credentials:
- FTPS Host server - FTPS Server value from the Veeva Common settings (Admin > Setting > Veeva Common)
- User - Vault CRM username. Use the format <vault url>_<username>
- Password - Vault CRM password
Uploading CLM Content as

Content admin users must create a control (CTL) file for every piece of content that is being uploaded. The format of the control file is as follows:
- USER=<Vault CRM Username> (in the format <vault url>_<username>)
- PASSWORD=<Vault CRM Password>
- FILENAME= <ContentName.zip>
- EMAIL=<email address to receive signin error messages>
The EMAIL field is optional. It is only used when there is a sign in error. If sign in is successful, the user's email address in Vault CRM is used to send success and failure messages.
The file extension must be lowercase for the file to be processed when uploaded, for example, <filename>.ctl.
The CTL file must be created using one of the following encoding formats:
- ASCII
- ISO-8859-1
- UTF-8
- UTF-16
- UTF-32
Files may not contain any of these special characters: ',/<>?;:{}[]~`!@#$%&*()=+
An example control file:
Example CTL file
USER=datasteward@customer.com.sandbox
PASSWORD=mypassword
EMAIL=user@company.com
FILENAME=Cholecap-1-Intro.zip
clm_id__v=VeevaCLM
Name=Cholecap – Events
product__v=a00S0000002i4oO
slide_version__v=1.0.0
description__v=Cholecap - 5 53% Fewer Adverse Events
The media_file_name__v field (mapped from FILENAME in the CTL file) is a unique external ID. If content is uploaded via FTPS with the same name as an existing record, the existing content is replaced and the record updates with the information from the control file.
If the target_platform__v field is set to salesforce__v or is not included in the CTL file, API names and the CLM JavaScript library used in the content is rendered as content developed for Veeva CRM. See Setting the Content Target Platform for HTML Content for more information.
Additional fields on the key_message__v object can be added to the control file. Each field should be entered in a separate line in the following format: <FieldAPIName>=<value>.
- Name the control file with the exact name of the associated content file, with the ctl extension. For example, a control file for the Cholecap-Intro-1.zip slide should be named Cholecap-Intro-1.ctl.
- Upload the file and the associated content through FTPS.
The content itself (zip file) is loaded to the content directory of the FTPS server. The content folder may be your root directory, in which case a content folder does not display.
- The control file must be uploaded to the ctlfile directory
- Always upload the zip file first, then upload the control file
When found, the control file is removed from that directory and then processed. If the control file was processed successfully, the content zip file is also processed and removed from the FTPS server.
Vault CRM does not support managing CLM content using both FTPS and the CLM PromoMats/MedComms Integration in the same Vault instance. See Vault Help for information on how to manage CLM content in PromoMats/MedComms and Packaging Custom CLM Content for information on packaging CLM content for PromoMats/MedComms.
Troubleshooting as

If other media is available but the new content does not display, the following steps may be helpful in troubleshooting:
- Find a presentation online that users can view on a mobile device and add a new key message as a presentation slide within that presentation. View the newly created key message online and check that you can download the file by selecting the file name. If you cannot, upload the file again.
- Navigate to More > Options > Media on a mobile device and confirm that the new key message is listed as downloaded to the device. If it is not present, try syncing again to ensure the local data is up to date.
- Verify that the presentation and slide are available in the Media tab on a mobile device. If the presentation is not available, the presentation may be missing a slide. Presentations only display if the user has all the slides required to show that presentation.