According to the documentation found here:
there are two different upload methods you can use, and one is meant for larger files.
Here is C# code I use to upload files, and I set the threshold at 10 MB:
public static Document UploadFileToFileCabinet(FileCabinet fileCabinet, string uploadFile, Document indexInfo = null)
LastError = "";
// We will use a standard upload method for smaller files, but the "Easy" version for larger files, otherwise
// large file uploads might fail (the "Easy" version is meant for huge file uploads, according to the documentation).
int largeFileThresholdInBytes = 10 * 1024 * 1024; // 10 MB
Document uploadedDoc = null;
FileInfo fileInfo = new FileInfo(uploadFile);
if (fileInfo.Length < largeFileThresholdInBytes)
// Smaller file.
uploadedDoc = fileCabinet.UploadDocument(indexInfo, fileInfo);
// Larger file.
uploadedDoc = fileCabinet.EasyUploadSingleDocument(fileInfo, indexInfo);
catch (Exception ex)
LastError = ex.Message;
The "Easy" method is part of some extensions, though, so I am not sure it has a direct resource end-point when doing API calls via non-NET environments.
Are you using .NET to access the API? If not, what are you using? I see in my non-NET code (Visual FoxPro) that if I need to upload a large file I shell out to the .NET program I wrote to upload files instead of using the straight HTTP endpoint to upload. So, I must have run into the same issue you are facing. The only truly reliable way to upload huge files is with the .NET code. With that code I have uploaded files greater than 1 GB in size.