I ran across this the other day while converting a process that was using attachments to use the new Files feature. What fixed it for me was setting the `FirstPublishedLocationId` to the record. So in your example public ID createFileFromUploadedFile(Id parentId) { ID docID = null; ContentVersion cv = new ContentVersion(); cv.versionData = file.Body; cv.title = file.FileName; cv.pathOnClient = file.FileName; ** cv.FirstPublishedLocationId = parentId ** insert cv;