bundlr.uploadFolder()
Uploads a folder of files to Bundlr.
Parameters
-folderToUpload
: Path to the folder being uploaded -
indexFile
: (optional) The name of an index file also included in the folder
you upload. If provided, this index file will load when a user requests
https://arweave.net/[manifest_id]
- batchSize
: (optional) The number of
files to upload at once. - keepDeleted
: (optional) Whether to keep now deleted
items from previous uploads. When you upload a folder, the file names are
indexed and saved. If you then re-upload that same folder, Bundlr will only
upload new files added since the previous upload. In the case where you delete
files from your source directory, this flag tells Bundlr whether to keep those
deleted files in the index or remove them.
Returns
-response
: A JSON object with the following values
response = {
id, // The transaction id of the upload
timestamp: // The timestamp of when the transaction was uploaded and verified
}
const folderToUpload = "./myNFTs/"; // Path to folder
try {
const response = await bundlr.uploadFolder(folderToUpload, {
indexFile: "index.html",
batchSize: 50,
keepDeleted: false,
});
console.log(`Files uploaded. Manifest Id ${response.id}`);
} catch (e) {
console.log("Error uploading file ", e);
}
Files uploaded via bundlr.uploadFolder(folderToUpload)
can be retrieved in one of two ways.
- Creating an URL with the format
https://arweave.net/[manifest-id]/[original-file-name]
. - Creating an URL using the transaction ID of each individual file uploaded with the format
https://arweave.net/[transacton-id]
After a successful folder upload, two files are written to your local project directory [folder_name].csv
and [folder_name].json
. The example below highlights a folder called “llama_folder” with a total of 5 files in it. The transaction id for each file can be used to retrieve the uploaded data by forming an URL with the format https://arweave.net]/[transaction-id]