ApiUploads
Upload an image through the server (≤5 MB)
POST
Fallback upload path for API clients (zap_* key with uploads:write scope or JWT). Prefer the client-direct flow (/uploads/handle) for browsers — it bypasses function size limits and is cheaper.
bearerfolder?stringDefault
"misc"Value in
"avatars""banners""blog""misc"X-API-Version?stringAPI version for header-based versioning
Default
"1"Value in
"1""2"multipart/form-data- body
file*unknownFile uploaded — returns the public blob URL.
response?unknownapplication/jsoncurl -X POST 'http://localhost:3001/api/v1/uploads/server' \ -F 'file=null'Example Response200
{ "status": "success", "statusCode": 200, "message": "OK", "data": { "url": "https://…public.blob.vercel-storage.com/avatars/u1/pic-aB3dEf.png", "pathname": "avatars/u1/pic-aB3dEf.png" }, "timestamp": "2026-10-23T10:00:00.000Z", "path": "/api/v1/uploads/server"}Mint client-upload token (used by @vercel/blob/client) POST
Internal endpoint invoked by the `@vercel/blob/client` `upload()` function. Validates the requested pathname, then returns a constrained client token (image types only, 5 MB max, random suffix). Auth: zap_* API key with `uploads:write` scope, or dashboard JWT.
Get current quota usage GET
Next Page