import express from 'express'; import * as Bytescale from '@bytescale/sdk'; import multer from 'multer'; const router = express.Router(); const uploadManager = new Bytescale.UploadManager({ apiKey: process.env.BYTESCALE_SECRET_API_KEY, }); const storage = multer.memoryStorage(); const upload = multer({ storage }); router.post('/', upload.single('file'), async (req, res) => { try { const file = req.file; const { folderPath } = req.body; const result = await uploadManager.upload({ data: file.buffer, name: file.originalname, mime: file.mimetype, path: { folderPath: folderPath || '/general', }, }); res.json({ fileUrl: result.fileUrl }); } catch (error) { console.error(error); res.status(500).json({ error: 'Upload failed' }); } }); export default router;