
how can i achive uploading a file to storage, using a url?
i attach a photo of an example i want to do, is that possible and any hints on how to do it?

You cant

There is no possible way??? Tried to fetch it and parse the buffer to it but did not work sadly

You should be able to upload via a buffer

async function uploadImage(
imageUrl,
imageName,
bucketId = process.env.IMAGES_BUCKET_ID
) {
try {
const imageResponse = await fetch(imageUrl);
if (!imageResponse.ok) {
throw new Error("Failed to fetch image from URL");
}
const arrayBuffer = await imageResponse.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
const inputFile = sdk.InputFile.fromBuffer(buffer, imageName);
const result = await storage.createFile(bucketId, ID.unique(), inputFile);
return result;
} catch (error) {
console.error("Error uploading image:", error);
throw error;
}
}

Seems correct to me

Error uploading image: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type number (3798243238)

Ah nvm see the error imageName should be an string

What sdk are you using?

Appwrite

const sdk = require("node-appwrite");

Maybe you can use InputFile.fromBlob(await imageResponse.blob())
Btw there's a new version of the node sdk

I tried updating lately and had loads of errors... So I just went back to the old one
Recommended threads
- Appwrite Error: 401 Unauthorized on getC...
Hi everyone, I'm getting an error while trying to fetch the current user using Appwrite in my React project. Here's the error log: auth.js:41 GET https://fra....
- Profile Image from storage not showing (...
I am uploading a photo during register, and it is also being uploaded to appwrite storage . But in my profile screen it is showing black screen. I am attaching ...
- Upload file
i got this error when try upload file (.Net). I use this line to check my buucket and its all right var buckets = await appWriterInit.Storage.List...
