ADO.NET Provider for Salesforce

Build 25.0.9434

UploadContentDocument

Uploads a document to Salesforce Content and associates it with relevant records.

Uploading single files or single folders

To upload a single ContentDocument, specify the FullPath:
EXEC UploadContentDocument FullPath = 'C:\\csv samples\\mycsvfile.csv'
To upload all Content Documents in a single folder, use FolderPath:
EXEC UploadContentDocument FolderPath = 'C:\\csv samples'
For Base64 data, you need to specify the Base64Data, Title, and FileExtension:
EXEC UploadContentDocument Base64Data = 'byBib2Jl', Title = 't', FileExtension = 'txt'

Uploading multi-valued inputs

There are various ways to upload multiple files or folders. One way is to use a temporary table, #TEMP: First insert values into temporary tables. For example:
INSERT INTO ContentDocument#TEMP (FolderPath) VALUES ('C:\\TestImages')
INSERT INTO ContentDocument#TEMP (FolderPath) VALUES ('C:\\csv samples')
This inserts the values into a table in memory.

Then reference that same table when executing the stored procedure:

EXEC UploadContentDocument ContentDocumentTempTable = 'ContentDocument#TEMP'
This approach has the advantage of avoiding arbitrary parameters as inputs to the stored procedure. Alternatively, you can specify multiple FullPaths using a #TEMP table or use multiple Base64 data entries.

Input

Name Type Accepts Input Streams Description
FullPath# String False The full local path to the file to upload. Required if Base64Data is not provided. Only one of FullPath or FolderPath should be specified for a single operation.
Base64Data# String False Base64-encoded string representing the contents of the file. Required if FullPath is not specified. Useful for programmatic uploads without local file access.
FileExtension# String False The file extension that indicates the content type (such as PDF, TXT, or DOCX). Required when using Base64Data to define the file contents.
Title# String False The title to assign to the ContentDocument in Salesforce. If omitted, the file name from FullPath will be used. Required when uploading using Base64Data.
FolderPath# String False Path to a local folder containing multiple files to upload in batch. Only one of FolderPath or FullPath should be used per request.
Description# String False Optional text description for the ContentDocument. Maximum length is 255 characters.
Content String True The file content as an InputStream. Used as an alternative to FullPath or Base64Data for direct streaming uploads.
ContentDocumentTempTable String False Temporary table used for uploading multiple ContentDocument records in batch. Each row should contain fields such as FullPath or Base64Data.

Result Set Columns

Name Type Description
Id String The ID of the newly created content version record associated with the uploaded document.
ContentDocumentId String The ID of the ContentDocument object created from the uploaded file.

Copyright (c) 2025 CData Software, Inc. - All rights reserved.
Build 25.0.9434