Design once.
Render everywhere.
On-brand images and PDFs for agencies, brands and startups. Build a template once, then render it at scale via API, workflows and AI agents.
{
"headline": "50% off today",
"price": "$24.00"
}One template, called from your backend, an automation, or an agent.
Plugs into the tools your content already flows through
On-brand templates by default.
Automations render them at scale.
BuildOnce is the whole path: author the template, hold the brand, expose it as an API, and keep a record of everything it produced.
Visual studio
A real design canvas — text, images, shapes, multi-page documents. Drafts autosave as you work and thumbnails are captured for you.
Named variables
Bind any layer to a name. Those names become the parameters of your render call, so designers change the art without breaking your code.
Brand kit
Logos, custom WOFF2 fonts, a color palette and a style guide, stored per workspace and readable by both the editor and your agents.
Render API
One authenticated POST returns a hosted PNG, JPEG or PDF. Render a single page, or every page at once as a multi-page document.
Import what you have
Bring existing designs in from Canva, Orshot, Templated.io and Bannerbear, start from the public catalog, or open a blank canvas.
Render log
Every render — from the dashboard, the API or an agent — is logged with its format, size, source and cost, and stays downloadable.
Social publishing
Connect LinkedIn, Instagram, Facebook, Threads and X, then schedule a rendered asset straight to the feed and track it in the posts log.
Embeddable studio
Drop the same editor into your own product for your customers, scoped per tenant, with webhooks when a template is created or changed.
Workspaces & roles
Templates, assets, keys and credits are scoped per workspace with owner/admin/member roles and seat-aware invitations.
Full endpoint and tool reference in the documentation.
Change the data,
not the design.
Pick a campaign and a size — the design stays fixed, only the named variables change. Your API call does exactly this.
POST /v1/templates/tpl_9k2f/render
Authorization: Bearer $FRAMELINE_API_KEY
{
"format": "png",
"modifications": {
"headline": "Meet the new Atlas 2",
"subhead": "Available now",
"badge": "Launch"
}
}Same template, same layers — only headline, subhead and badge changed.
From blank canvas to production API in an afternoon
Design your template
Start from a blank canvas, the public catalog, or import what you already have from Canva, Orshot, Templated.io or Bannerbear.
Name what changes
Tag the headline, the price, the product shot. Those names become your API parameters — the design can keep evolving without a code change.
Create a scoped key
Issue an API key bound to one workspace with only the scopes it needs, or connect an agent over OAuth through the MCP server.
Render at scale
Call the endpoint with your values and get back a hosted PNG, JPEG or PDF. Every render is logged, costed and downloadable.
The work you stop doing
Cut the export step entirely
The loop where someone opens a design file, edits a headline and exports a PNG disappears. Your system asks for the asset and gets it back.
Nothing drifts off-brand
Fonts, colors and logos live in the workspace brand kit. Every render — yours or an agent’s — draws from the same source, so the hundredth asset matches the first.
One template, every destination
PNG, JPEG and multi-page PDF from the same design, at any size up to 20,000px. Render one page or all of them in a single call.
Tenant-safe by construction
Scoped keys bound to one workspace, plus Postgres row-level security as an independent backstop behind the API’s own guard chain.
Built for whoever needs
the hundredth version.
Anywhere the design is settled but the content keeps changing, BuildOnce replaces the manual export step.
A creative for every SKU, automatically
Generate product cards, price-drop ads and seasonal banners straight from your catalog. When a price changes, the creative changes with it — no designer in the loop.
- Render one ad set in four sizes from a single template
- Pull product titles, prices and photos from your own database
- Re-render on every catalog change without touching the design
Give your AI agent
a real design tool.
BuildOnce ships a Model Context Protocol server. Connect it once and your agent can browse templates, author designs against your brand kit, and render finished files — all inside your workspace.
It knows your brand
get_brand_kit hands the agent your real palette, fonts and logo, so what it produces already looks like you.
It designs, not just fills
Agents can author a full design document — not only substitute text into a template someone else made.
It stays accountable
Every agent render bills to the workspace and shows up in the render log, with scoped OAuth access you can revoke.
claude mcp add frameline \ --transport http \ https://app.frameline.io/v1/mcp
“Make a launch-day Instagram post for our new pricing using our brand colors, then render it at 1080×1080.”
Wherever your content is made, BuildOnce can render it
Publish to social
Built-inConnect an account once, then schedule rendered assets straight to the feed.
Connect an agent
MCPOne OAuth-secured MCP endpoint, supported by every major agent client.
Call from anything
REST APIA plain REST endpoint and a bearer token — no SDK required, though one helps.
One credit per rendered file
No per-seat surprises and no charge for re-rendering identical output. Every plan includes the full API and MCP server.
Exercise the API before you pay.
- 100 one-time render credits
- 1 workspace · 1 seat
- 30 requests / minute
- Full API & MCP access
For a first product in production.
- 2,000 credits / month
- 1 workspace · 3 seats
- 60 requests / minute
- Social publishing
For teams shipping on a schedule.
- 10,000 credits / month
- 3 workspaces · 10 seats
- 120 requests / minute
- Embeddable studio
High volume, many brands.
- 50,000 credits / month
- 10 workspaces · unlimited seats
- 600 requests / minute
- Priority render throughput
Downgrades are scheduled for the end of your billing period, never applied mid-cycle. See rate limits.
Questions, answered
If something here is still unclear, the documentation goes deeper on every endpoint and tool.
One credit per rendered file. A PNG is one credit; a four-page PDF rendered as a single document is also one file. Re-rendering output that is byte-for-byte identical to something you already rendered does not charge again, so retries and idempotent calls are free.
No. You can start from the public template catalog or import designs you already have from Canva, Orshot, Templated.io or Bannerbear, then just rename the layers you want to control from your code. The visual studio is there when you want it, not required.
Screenshotting HTML means maintaining a rendering service, fonts, and a layout that was never designed for print or social crops. BuildOnce renders from a real design document with your own brand fonts, gives you multi-page PDF output, and hands non-engineers a canvas they can edit without touching your code.
Yes. The MCP server is OAuth-only — a plain API key will not authenticate there — and access is scoped to a single workspace that you approve at connect time. Every agent render bills to that workspace and appears in the render log, and you can revoke access at any point.
Templates, brand assets, API keys and credits are scoped per workspace, and nothing crosses between them. Authorization is enforced by the API guard chain with Postgres row-level security as an independent second layer, so a bug in one does not expose another tenant’s data.
Upgrades apply immediately. Downgrades are scheduled for the end of the current billing period rather than applied mid-cycle, and are blocked up front if your current seats or workspaces would exceed the target plan’s limits — so you never lose access to something you are actively using.
Yes. The embeddable studio runs the same editor on your domain, scoped per tenant, with per-feature toggles and webhooks that fire when one of your customers creates or updates a template. It is available on the Grow plan and above.
PNG, JPEG and PDF, at any canvas size up to 20,000px per side. You can render a single page, a specific page by id, or every page at once — which produces one file per page for images, or a single multi-page document for PDF.
Stop making the same graphic twice
Start on the free plan with 100 render credits. No credit card, and the API and MCP server are open from the first minute.