Guides/How to deploy a standalone HTML page

How to deploy a standalone HTML page

No form. No dashboard. Just a page.

Updated March 2026

Sutrena is the web runtime for AI agents. Sometimes you just need a page on the web. A coming-soon page, a portfolio, a project showcase, a simple announcement. POST your HTML, get a live URL. No form required, no dashboard needed. Just pure HTML deployed in seconds. This guide covers deploying standalone pages with CSS, images, and assets.

1. Get an API key

Use the free plan (sign up at sutrena.com) or get a trial key instantly with no signup.

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

2. Deploy your page

POST your HTML to /api/pages. Include inline CSS for styling. The page is served at your subdomain with the slug as the path. Use slug "index" for the root page.

curl -X POST https://sutrena.com/api/pages   -H "Authorization: Bearer $KEY"   -H "Content-Type: application/json"   -d '{
    "slug": "index",
    "title": "Coming Soon",
    "html": "<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><style>*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,-apple-system,sans-serif;display:flex;align-items:center;justify-content:center;min-height:100vh;background:#0a0a0a;color:#fafafa}main{text-align:center;padding:2rem}h1{font-size:3rem;margin-bottom:1rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}p{font-size:1.25rem;color:#999;max-width:480px;line-height:1.6}</style></head><body><main><h1>Something New</h1><p>We are building something. It will be ready soon. Check back later.</p></main></body></html>"
  }'

# Response:
# {
#   "id": "pg_xyz789",
#   "slug": "index",
#   "pageUrl": "https://sutrena.com/p/index",
#   "subdomainUrl": "https://your-subdomain.sutrena.com/"
# }

3. Add images and assets

Upload images, CSS files, or JavaScript to Sutrena's CDN via presigned URLs. Reference the returned publicUrl in your page HTML. Size limits depend on your plan.

# Step 1: Request a presigned upload URL
curl -X POST https://sutrena.com/api/pages/assets   -H "Authorization: Bearer $KEY"   -H "Content-Type: application/json"   -d '{"filename": "hero.jpg", "contentType": "image/jpeg", "sizeBytes": 185000}'

# Response:
# {
#   "id": "ast_abc123",
#   "uploadUrl": "https://r2.example.com/presigned...",
#   "publicUrl": "https://assets.sutrena.com/usr_id/hero.jpg"
# }

# Step 2: Upload the file
curl -X PUT "$UPLOAD_URL"   -H "Content-Type: image/jpeg"   --data-binary @hero.jpg

# Step 3: Use the publicUrl in your page HTML
# <img src="https://assets.sutrena.com/usr_id/hero.jpg" alt="Hero image">

4. Update or unpublish

PUT to /api/pages/{id} with new HTML to update content. The URL stays the same. Set isPublished to false to hide the page without deleting it.

# Update the page content
curl -X PUT https://sutrena.com/api/pages/pg_xyz789   -H "Authorization: Bearer $KEY"   -H "Content-Type: application/json"   -d '{"html": "<!DOCTYPE html><html><head><style>body{font-family:system-ui;text-align:center;padding:4rem}</style></head><body><h1>We Launched!</h1><p>The wait is over.</p></body></html>"}'

# Unpublish the page (returns 404 to visitors, but keeps the data)
curl -X PUT https://sutrena.com/api/pages/pg_xyz789   -H "Authorization: Bearer $KEY"   -H "Content-Type: application/json"   -d '{"isPublished": false}'

FAQ

Can I use external CSS frameworks?

Yes. Link to any CDN-hosted CSS in your HTML head. Tailwind CSS via CDN, Bootstrap, Bulma, or any other framework. External scripts over HTTPS work too. Example: <link href="https://cdn.jsdelivr.net/npm/tailwindcss@3/dist/tailwind.min.css" rel="stylesheet">

What about JavaScript?

Inline JavaScript and external scripts over HTTPS both work. You can include analytics, interactive widgets, fetch calls to any API, or full client-side applications. There are no restrictions on what your page can execute.

How do I add analytics?

Include your analytics script in the page HTML. Google Analytics, Plausible, Fathom, PostHog, or any other provider. Add the script tag in the head or before the closing body tag, same as any HTML page.

What is Sutrena?

Sutrena is the web runtime for AI agents. Three primitives — pages, forms, and dashboards — accessible through one API. Your agent creates web artifacts, humans interact with them, and your agent gets the data back. Framework-agnostic. Works from any MCP client or HTTP client.

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 a form + dashboard from a template

curl -X POST https://sutrena.com/api/forms \
  -H "Authorization: Bearer st_trial_xxx" \
  -H "Content-Type: application/json" \
  -d '{"templateId": "waitlist", "createDashboard": true}'

Ready to build?

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

Deploy a standalone HTML page — Sutrena | Sutrena