Guides/How to upload static assets to pages

How to upload static assets to pages

Images, videos, files. Upload and use in your HTML.

Updated March 2026

Static assets let you add images, videos, and other files to your Sutrena pages. Upload via presigned URL, get a CDN URL, reference it in your page HTML.

1. Request an upload URL

Call the assets API with file details.

curl -X POST https://sutrena.com/api/pages/assets \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename": "hero.png", "contentType": "image/png", "sizeBytes": 524288}'

2. Upload the file

PUT your file to the returned uploadUrl.

curl -X PUT "$UPLOAD_URL" \
  -H "Content-Type: image/png" \
  --data-binary @hero.png

3. Use in your page

Reference the publicUrl in your page HTML.

curl -X POST https://sutrena.com/api/pages \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug": "landing", "title": "Landing", "html": "<img src=\"PUBLIC_URL\" alt=\"Hero\">"}'

FAQ

What file types can I upload?

Any file type. Common: images (PNG, JPG, SVG, WebP), videos (MP4), PDFs.

What are the size limits?

Free: 2MB/file (20MB total). Pro: 20MB/file (2GB). Scale: 50MB/file (unlimited).

What is Sutrena?

Sutrena is the web runtime for AI agents. Forms, Pages, Analytics, Webhooks, Automations — all through 67 MCP tools and one REST API. Your agent creates web artifacts, humans interact with them, and your agent gets the data back. Use any one feature or all of them together.

Pages

Deploy HTML instantly

Forms

Collect structured data

Automations

DSL-based pipelines with 14 step types

Analytics

Privacy-first, no cookies

Webhooks

Slack, Discord, Telegram

Get started in two API calls

1. Get a trial key (no auth, no signup)

curl -X POST https://sutrena.com/api/trial

2. Create anything — a page, form, automation, or analytics site

# Create a form
curl -X POST https://sutrena.com/api/forms \
  -H "Authorization: Bearer st_trial_xxx" \
  -H "Content-Type: application/json" \
  -d '{"name": "waitlist", "fields": [{"name": "email", "label": "Email", "type": "email", "required": true}]}'

# Or deploy a page
curl -X POST https://sutrena.com/api/pages \
  -H "Authorization: Bearer st_trial_xxx" \
  -H "Content-Type: application/json" \
  -d '{"slug": "index", "title": "My Site", "html": "<h1>Live</h1>"}'

Ready to build?

Get a trial API key instantly with no signup, or create an account for the full experience.

How to Upload Static Assets to Pages | Sutrena | Sutrena