Quickstart
Create a VectorFast Render API key, render your first image with POST /v1/renders, and reuse the signed image URL in og:image or your product.
Short answer: create an API key, send one POST /v1/renders request with a template id and parameters, and store the signed url from the response. That URL serves the same image forever and is safe to put in an og:image tag.
Early access
API keys are issued to waitlist members as access opens, and billing is not connected yet. Everything below works the same once billing starts, except that new renders will spend credits.
1. Create an API key
Sign in at vectorfast.ai with your early-access account. A key management screen is not built yet; until it ships, keys are created by the account endpoint POST /api/render/keys, which uses your signed-in browser session rather than an API key. From the browser console on a vectorfast.ai page:
await fetch('/api/render/keys', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ name: 'Local development' }),
}).then(response => response.json())The response contains secret, the full key (vf_live_ followed by 44 characters). It is shown once. Store it in an environment variable on your server:
export VECTORFAST_API_KEY="vf_live_…"See Authentication for revoking keys and rate limits.
2. Render an image
curl https://vectorfast.ai/v1/renders \
-H "Authorization: Bearer $VECTORFAST_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "launch-post@1",
"format": "png",
"width": 1200,
"height": 630,
"params": {
"title": "Scheduled renders are live",
"subtitle": "On-brand images now render from CI on every release.",
"badge": "New"
}
}'The response:
{
"id": "rnd_…",
"url": "https://vectorfast.ai/i/launch-post.png?badge=New&brand=default&h=630&k=…&subtitle=…&title=…&w=1200&sig=…",
"cache_key": "…",
"cached": false,
"credits_charged": 0,
"width": 1200,
"height": 630,
"scale": 1,
"format": "png",
"render_ms": 42,
"template_version": "launch-post@1.0.0"
}Send the same request again and you get "cached": true and "render_ms": 0: nothing was rendered the second time. render_ms depends on the template and on whether fonts were already cached.
Leave out brand_kit and the render uses your oldest brand kit, or the built-in VectorFast kit if you have none. To render with a specific kit, pass its id ("brand_kit": "bk_…"); see Brand kits and logos.
3. Reuse the signed URL
url is a signed GET /i/{template}.{format} URL. Anyone holding it can load the image, it never expires, and it is served with Cache-Control: public, max-age=31536000, immutable. Store it next to the record it belongs to and use it directly:
<meta property="og:image" content="https://vectorfast.ai/i/launch-post.png?…&sig=…" />If you want <img> tags to point at VectorFast without a server round trip per page, you can also build signed URLs yourself once per-key signing secrets are available; see Signed URLs.
4. Or let an agent do it
Connect the MCP server once and ask in plain language. In Claude Code:
claude mcp add --transport http vectorfast-render https://vectorfast.ai/mcp \
--header "Authorization: Bearer $VECTORFAST_API_KEY"Then ask: "Make a launch image for our scheduled renders release with a New badge." See MCP for Claude Desktop, Cursor, and ChatGPT.
Next
- Browse the templates and their parameters.
- Pick sizes and formats in the REST API reference.
- Add OG images to a framework: Next.js, Astro.
Updated 2026-10-30 · Markdown version
VectorFast Render docs
Documentation for VectorFast Render, the brand-asset rendering API for AI agents and code. Templates plus JSON parameters become PNG, JPEG, or WebP through MCP, REST, or signed URLs.
Authentication
How VectorFast Render API keys work, how to create, list, and revoke them, and the per-key rate limits for REST and MCP requests.