Skip to content

Quick Start — Generate Your First OG Image

Sign up with your email. No credit card required.

Terminal window
curl -X POST https://og-engine.com/auth/register \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com"}'
{ "apiKey": "oge_sk_a1b2c3...", "plan": "free", "limit": 500, "message": "API key also sent to you@example.com" }

Your API key is in the response above — ready to use immediately. A copy is also sent to your email for safekeeping.

Terminal window
curl -X POST https://og-engine.com/render \
-H "Authorization: Bearer oge_sk_a1b2c3..." \
-H "Content-Type: application/json" \
-d '{"format": "og", "title": "Hello, OG Engine"}' \
--output hello.png
{
"format": "og",
"title": "My First OG Image",
"description": "Generated in ~22ms, no browser needed.",
"tag": "Tutorial",
"style": {
"accent": "#38ef7d",
"font": "Outfit",
"layout": "left"
}
}

Try editing the title below — the image updates instantly:

0.0ms|8500x

Step 4 — Check If Text Fits (Free, Unlimited)

Section titled “Step 4 — Check If Text Fits (Free, Unlimited)”
Terminal window
curl -X POST https://og-engine.com/validate \
-H "Content-Type: application/json" \
-d '{"format": "og", "title": "Some very long headline that might not fit..."}'
{
"fits": true,
"title": { "lines": 2, "maxLines": 3, "overflow": false },
"computeTimeMs": 0.12
}
Terminal window
npm install @atypical-consulting/og-engine-sdk
import { OGEngine } from '@atypical-consulting/og-engine-sdk'
const og = new OGEngine('oge_sk_a1b2c3...')
const image = await og.render({
format: 'og',
title: 'Hello from the SDK',
})
await Bun.write('hello.png', image)