BielframosOriginal post
Rank 2: Process
Problem
I’m trying to create a file in Appwrite Storage using the node-appwrite SDK.
The InputFile is generated from a base64 buffer, and I’m passing a fileId with ID.unique().
Code snippet:
TypeScript
const fileBuffer = Buffer.from(base64, 'base64');const filenameForUpload = filename ?? `${ID.unique()}.bin`;
let newFileInBucket = await storage.createFile( storageId, ID.unique(), InputFile.fromBuffer(fileBuffer, filenameForUpload), [Permission.read(Role.team(teamId)), Permission.write(Role.team(teamId))]);Error:
AppwriteException: Param "fileId" is not optional
at _Client.call (.../node_modules/node-appwrite/dist/client.mjs:294:13)
...
Notes
ID.unique()returns a valid value (already logged).- The error still occurs even when logging the
fileId.
Environment
- Node.js v22
Summary
Bug report for creating a file in Appwrite Storage using `node-appwrite` SDK. Error states "Param 'fileId' is not optional" even when correctly passing it. Developers suggest trying a different syntax for `createFile` method.