V11 SP8

Initiate an Upload Session to Edge Drive Share (REST API: POST)


Use this operation to initiate the upload session for uploading multiple file chunks to the shared folder in Edge Drive. Optionally, you can also send the first file chunk along with the request.



POST <webservice>/drive/share/{shareId}/file/action/upload?uploadType=chunkedFile HTTP/1.1
Host: <host name>
Accept: application/xml
Authtoken: <authentication token>

where <webservice> is the root path used to route the API requests to the Web Server.

For more information, see Available Web Services for REST API.

Request Parameters

Name Description Required
shareId The unique identifier (syncWebFolderId response) returned when you share a file or folder or view the shared files and folders in Edge Drive. For details on retrieving the syncWebFolderId response, see Sharing a File or Folder or Viewing Shared Files and Folders. Yes

Request Headers

Name Description
Host The host name of the Web Server or Web Console used in the API request.
Accept The format of the response. Valid values are: application/xml or application/json.
Authtoken The authentication token received after successfully logging on. For details on receiving an authentication token, see Authentication.
FileName Name of the file to be uploaded. The name must be base64 encoded.
FileSize Size (in bytes) of the file to be uploaded.
FileModifiedtime The last modified time of the file to be uploaded. Provide the value in UNIX timestamp format (in seconds). For example, 1424813723.
ParentFolderPath The path to the destination folder where the file will be uploaded. The path must be relative from the root path and base64 encoded.
FileEOF Specifies whether the end of file has reached with the current file chunk. Allowed values are 0 and 1.

To indicate end of file, enter the value 1.

If end of file has not reached, you can skip this header or enter the value 0.

Request Body

If you are sending the first file chunk along with the API request, then include the contents of the file chunk in bytes. Do not include the content-type header.


Response Parameters

Parameter Description Element
chunkOffset The number of bytes received by the Web Server for the uploaded file chunk. DM2ContentIndexing_UploadFileResp
requestId A unique identifier for the current upload session.

Provide this value as input for uploading the file data chunks. For details, see POST File Data Chunk Upload.

errorCode The possible error codes.

Valid values are:

  • 200, successful completion.
  • a specific error code.


Sample Request

POST <webservice>/drive/share/37/file/action/upload?uploadType=chunkedFile HTTP/1.1
Host: client.mydomain.com
Accept: application/xml
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
FileName: VHVsaXAuanBn
FileSize: 845941
FileModifiedtime: 1424813723
ParentFolderPath: XHBpY3R1cmVz

Supported Error Codes

Code Status Description
400 Bad Request The request is missing required headers or file content in the request body.

Make sure the parameter values and format in the header request are correct. For example, the header request for file modified time must be specified in UNIX timestamp format (in seconds). Specifying a millisecond value will return an error. Also, the name must be base64 encoded.

403 Forbidden The user does not have rights to upload the file or the upload operation is disabled by the administrator by disabling backup activity from the CommCell Console.
409 Conflict An upload operation is already in progress for the same file. The response body will have the existing requestId and the number of bytes that the web server has already received for the file. For example:

<DM2ContentIndexing_UploadFileResp requestId="13213022088234198160108125214183230586134182" chunkOffset="780830" errorCode="409" />

When a conflict occurs,

  • Use the same requestID to resume a chunk file upload from the byte offset sent from the server by sending data chunks.


  • Use the following URL parameter to force restart the upload of the file from the beginning. If this approach is used a new upload request session will be initiated and response will have the requestID.  Using the new requestID, the file data can be sent from beginning.