This is a manager for chunked uploads (allowed for files at least 20MB).
- Create upload session
- Create upload session for existing file
- Get upload session
- Upload part of file
- Remove upload session
- List parts
- Commit upload session
- Upload big file
Creates an upload session for a new file.
This operation is performed by calling function createFileUploadSession
.
See the endpoint docs at API Reference.
await this.createFileUploadSession(
{
fileName: fileName,
fileSize: fileSize,
folderId: parentFolderId,
} satisfies CreateFileUploadSessionRequestBody,
new CreateFileUploadSessionHeaders({}),
cancellationToken
);
- requestBody
CreateFileUploadSessionRequestBody
- Request body of createFileUploadSession method
- headers
CreateFileUploadSessionHeaders
- Headers of createFileUploadSession method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type UploadSession
.
Returns a new upload session.
Creates an upload session for an existing file.
This operation is performed by calling function createFileUploadSessionForExistingFile
.
See the endpoint docs at API Reference.
Currently we don't have an example for calling createFileUploadSessionForExistingFile
in integration tests
- fileId
string
- The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL
https://*.app.box.com/files/123
thefile_id
is123
. Example: "12345"
- The unique identifier that represents a file. The ID for any file can be determined by visiting a file in the web application and copying the ID from the URL. For example, for the URL
- requestBody
CreateFileUploadSessionForExistingFileRequestBody
- Request body of createFileUploadSessionForExistingFile method
- headers
CreateFileUploadSessionForExistingFileHeaders
- Headers of createFileUploadSessionForExistingFile method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type UploadSession
.
Returns a new upload session.
Return information about an upload session.
This operation is performed by calling function getFileUploadSessionById
.
See the endpoint docs at API Reference.
await this.getFileUploadSessionById(
uploadSessionId,
new GetFileUploadSessionByIdHeaders({}),
cancellationToken
);
- uploadSessionId
string
- The ID of the upload session. Example: "D5E3F7A"
- headers
GetFileUploadSessionByIdHeaders
- Headers of getFileUploadSessionById method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type UploadSession
.
Returns an upload session object.
Updates a chunk of an upload session for a file.
This operation is performed by calling function uploadFilePart
.
See the endpoint docs at API Reference.
await this.uploadFilePart(
acc.uploadSessionId,
generateByteStreamFromBuffer(chunkBuffer),
new UploadFilePartHeaders({ digest: digest, contentRange: contentRange })
);
- uploadSessionId
string
- The ID of the upload session. Example: "D5E3F7A"
- requestBody
ByteStream
- Request body of uploadFilePart method
- headers
UploadFilePartHeaders
- Headers of uploadFilePart method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type UploadedPart
.
Chunk has been uploaded successfully.
Abort an upload session and discard all data uploaded.
This cannot be reversed.
This operation is performed by calling function deleteFileUploadSessionById
.
See the endpoint docs at API Reference.
Currently we don't have an example for calling deleteFileUploadSessionById
in integration tests
- uploadSessionId
string
- The ID of the upload session. Example: "D5E3F7A"
- headers
DeleteFileUploadSessionByIdHeaders
- Headers of deleteFileUploadSessionById method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type undefined
.
A blank response is returned if the session was successfully aborted.
Return a list of the chunks uploaded to the upload session so far.
This operation is performed by calling function getFileUploadSessionParts
.
See the endpoint docs at API Reference.
await this.getFileUploadSessionParts(
uploadSessionId,
{} satisfies GetFileUploadSessionPartsQueryParams,
new GetFileUploadSessionPartsHeaders({}),
cancellationToken
);
- uploadSessionId
string
- The ID of the upload session. Example: "D5E3F7A"
- queryParams
GetFileUploadSessionPartsQueryParams
- Query parameters of getFileUploadSessionParts method
- headers
GetFileUploadSessionPartsHeaders
- Headers of getFileUploadSessionParts method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type UploadParts
.
Returns a list of parts that have been uploaded.
Close an upload session and create a file from the uploaded chunks.
This operation is performed by calling function createFileUploadSessionCommit
.
See the endpoint docs at API Reference.
await this.createFileUploadSessionCommit(
uploadSessionId,
{ parts: parts } satisfies CreateFileUploadSessionCommitRequestBody,
new CreateFileUploadSessionCommitHeaders({ digest: digest }),
cancellationToken
);
- uploadSessionId
string
- The ID of the upload session. Example: "D5E3F7A"
- requestBody
CreateFileUploadSessionCommitRequestBody
- Request body of createFileUploadSessionCommit method
- headers
CreateFileUploadSessionCommitHeaders
- Headers of createFileUploadSessionCommit method
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type Files
.
Returns the file object in a list.Returns when all chunks have been uploaded but not yet processed.
Inspect the upload session to get more information about the progress of processing the chunks, then retry committing the file when all chunks have processed.
Starts the process of chunk uploading a big file. Should return a File object representing uploaded file.
This operation is performed by calling function uploadBigFile
.
await client.chunkedUploads.uploadBigFile(
fileByteStream,
fileName,
fileSize,
parentFolderId
);
- file
ByteStream
- The stream of the file to upload.
- fileName
string
- The name of the file, which will be used for storage in Box.
- fileSize
number
- The total size of the file for the chunked upload in bytes.
- parentFolderId
string
- The ID of the folder where the file should be uploaded.
- cancellationToken
undefined | CancellationToken
- Token used for request cancellation.
This function returns a value of type FileFull
.