//09 — Dev Snippets API · v1.0 · /products/dev-api
API live · 6 endpointsOne key. Six endpoints. We use these to ship Elofyn — now they’re yours.
One API key, six endpoints — OG image, PDF, diagram, screenshot, sitemap, OpenAPI mock. The same surfaces we ship Elofyn on, now yours via one POST.
Surface
6
HTTP endpoints
Auth
1
header · X-API-Key
Free tier
500
calls / month
Languages
4
curl · node · python · go
// 01 — Live · POST /v1/og
Render an OG image from markdown.
Type a title and a one-line subtitle. Press render. We POST to /api/dev/v1/og on your behalf with a sandbox key — no signup, no quota burn, same renderer that paints Elofyn’s own social cards.
// POST /api/dev/v1/og · live
markdown
First H1 → title · first paragraph → subtitle
test key · no quota burn
// preview surface · 1200 × 630
Loading try-it widget…
// 02 — Your first call · 30 s
Two POSTs. Pick your language.
No SDK. No CLI install. The first request issues your key; the second renders an image. Replace you@example.com with your address and you’re live.
Step 1 · Create an API key
POST /api/dev/v1/keys
# Sign up and receive an `ek_live_<32 hex>` key
curl -sS -X POST https://elofyn.com/api/dev/v1/keys \
-H "Content-Type: application/json" \
-d '{"email":"you@example.com"}'
# → 201 Created
# {
# "ok": true,
# "email": "you@example.com",
# "api_key": "ek_live_a1b2c3d4e5f60718293a4b5c6d7e8f90",
# "tier": "free",
# "created_at": "2026-05-16T07:31:36Z"
# }Step 2 · Render an OG image
POST /api/dev/v1/og
curl -sS -X POST https://elofyn.com/api/dev/v1/og \
-H "X-API-Key: $ELOFYN_DEV_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"markdown": "# How we ship every week\n\n*A Friday cadence beats a quarterly heroic.*",
"eyebrow": "// 01 — Journal",
"theme": "dark"
}' \
-o og.png// 03 — Endpoints
Six surfaces. One API key.
Each endpoint is a single POST with JSON in, a binary or JSON payload out, and the same request envelope. No service-specific SDK, no per-endpoint client library.
- POST/v1/og
OG image
Markdown → 1200×630 PNG. First H1 + first paragraph render as title + subtitle.
free - POST/v1/pdf
PDF
HTML → A4/Letter/etc. PDF via headless Playwright in an isolated context.
pro+ - POST/v1/diagram
Diagram
Mermaid source → SVG or 2× PNG. dark · light · forest · neutral themes.
free - POST/v1/screenshot
Screenshot
URL → PNG. Private-IP + DNS-rebind denylist, ad/analytics blocker on by default.
pro+ - POST/v1/sitemap
Sitemap
URL → sitemap.xml. Crawl budget honours robots.txt and tier-capped depth.
free - POST/v1/openapi-mock
OpenAPI mock
OpenAPI YAML → hosted mock URL with example responses, TTL 24h–90d by tier.
pro+
// 04 — Pricing
Pick a tier. Switch any time.
Quotas reset on the 1st of each month UTC. Burst limits are tokens/second over a 10-second window. No annual lock-in on Pro — Scale offers a discount when paid annually.
// 01 — free
no card · forever
Enough quota to render every social card for a side project.
- 500 calls / month
- Burst 2 req/s
- OG image · Diagram · Sitemap
- Test keys are pro-tier (sandbox)
// 02 — pro
per month · billed monthly
All six endpoints with the headroom most production sites need.
- 25,000 calls / month
- Burst 10 req/s
- All six endpoints
- 30-day mock retention
- Email support · 1 business day
// 03 — scale
per month · annual available
Heavy SSR pipelines, doc generators, monitoring fleets.
- 250,000 calls / month
- Burst 50 req/s
- All six endpoints
- 90-day mock retention · 3× DPR screenshots
- Priority queue · same-day support
// 05 — Ship it
Stop rebuilding the boring 20% of every project.
The first key is free; the test key works without one. The full spec lives in the docs. Found a bug or a missing parameter? Send the X-Request-Id and we’ll trace it.