BlobRouter v0.1 · Last updated: August 2026 · Architecture version: 2.0
npm install express multer @blobrouter/sdk
import express from "express";
import multer from "multer";
import { BlobRouter, BlobRouterError } from "@blobrouter/sdk";
const upload = multer({ storage: multer.memoryStorage() });
const storage = new BlobRouter({
apiKey: process.env.BLOBROUTER_API_KEY,
});
const app = express();
app.post("/upload", upload.single("file"), async (req, res) => {
try {
if (!req.file) {
return res.status(400).json({ error: "file required" });
}
const result = await storage.upload(req.file.buffer, {
fileName: req.file.originalname,
contentType: req.file.mimetype,
fileSizeBytes: req.file.size,
priority: "cold",
});
res.json(result);
} catch (err) {
if (err instanceof BlobRouterError) {
return res.status(err.statusCode ?? 500).json({
error: err.message,
code: err.code,
});
}
throw err;
}
});
app.listen(3000);