Your app is an organization in BuildBase. Your users sign in and work inside workspaces - one per team or customer.
You set up
In the console and the SDK
- Images uploaded in the console or from your server
- Whether each image is public or private
- Where you use them: posts, docs, your sign-in page
You get
For you and your team
- Image hosting without a storage bucket to manage
- Private images behind links that expire
- Width and height recorded for every image
Image hosting without a bucket to manage
Upload, get a URL and dimensions back, and choose who can open it.
Images Only, Checked
JPEG, PNG, GIF, WebP and SVG are accepted, checked by what the file really is, not by its name.
Safe SVGs
Scripts are stripped out of SVG files before they are stored.
Size Recorded
Width and height are saved with each image, so pages can reserve the space before it loads.
Public or Private
Choose per image. Private images are served through links that expire, and you can switch at any time.
One Image Library
The same images appear in the blog and docs editors, your sign-in page and your organization settings.
Find It Fast
Filter by public or private, sort by newest, and copy a public link in one click.
Upload with one multipart POST
Assets are API-first. There is no SDK method, so send the file under the field name file with an org token. The response has the URL and dimensions.
import { readFile } from 'node:fs/promises';
const form = new FormData();
form.append(
'file',
new Blob([await readFile('logo.png')], { type: 'image/png' }),
'logo.png'
);
// A string, not a boolean - anything else lands private.
form.append('public', 'true');
const res = await fetch('https://api.console.buildbase.app/api/assets', {
method: 'POST',
headers: { Authorization: process.env.BUILDBASE_TOKEN! },
body: form,
});
const { file: [asset] } = await res.json();
console.log(asset.bucket.url, asset.image); // { width, height }Read more in the docs
Setup guides and reference for Assets & Media.
Frequently Asked Questions
What people ask about Assets.
Do my users see this?
Only the images you place in front of them, like the logo on your sign-in page. Uploading and managing images is for your team.
Which files can I upload?
Images only: JPEG, PNG, GIF, WebP and SVG. Other file types are refused.
Are images resized or converted?
No. Images are stored as uploaded - except that scripts are stripped from SVGs - with their width and height recorded.
Can I delete an image?
No. You can make an image private, which moves it behind a link that expires.