Referencia de la API de imágenes OG
La referencia de la API de imágenes OG cubre el endpoint, los parámetros y el catálogo de plantillas para generar imágenes Open Graph dinámicas con FastOG. La API está supeditada a una suscripción: se requiere un plan Dynamic API activo, pero los propios renders no se facturan por uso: no hay cuota mensual de renders ni facturación por exceso. Las URL firmadas con HMAC mantienen segura cada solicitud. Regístrate, elige un plan Dynamic API y luego crea tu clave de API y tu secreto HMAC en el panel; los renders de pago de la API son limpios. El contrato OpenAPI generado es la lista autoritativa legible por máquina de parámetros, códigos de error y slugs de plantillas.
URL base
https://fastog.com/api/v1/og
Autenticación
Todas las solicitudes requieren autenticación mediante firma HMAC-SHA256. La key pública y la firma s son parámetros de consulta; actualmente no se admite la autenticación basada en cabeceras. Consulta la documentación de HMAC para más detalles.
Endpoint
GET /api/v1/og
Genera una imagen OG dinámica a partir de los parámetros proporcionados.
Parámetros de consulta
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
template |
string | No | Nombre de la plantilla (por defecto: default) |
title |
string | Sí | Encabezado principal. Obligatorio: una portada sin título no es una vista previa útil. |
subtitle |
string | No | Texto del subtítulo o de la descripción |
key |
string | Sí | Clave de API completa |
s |
string | Sí | Firma HMAC-SHA256 (64 caracteres hex) |
Parámetros específicos de cada plantilla
Todas las plantillas aceptan los parámetros compartidos que se indican a continuación además de sus parámetros específicos (consulta la tabla de índice). El parámetro de consulta template selecciona el diseño que se usa (por defecto: default).
Parámetros compartidos (todas las plantillas)
| Parámetro | Tipo | Descripción |
|---|---|---|
title |
string | Texto del encabezado principal |
subtitle |
string | Texto de apoyo |
tags |
list | Etiquetas separadas por comas |
theme |
string | dark | light | glass | solid | midnight | vivid | paper | glass_light | custom |
gradient_preset |
string | Preajuste de degradado con nombre (p. ej. indigo, ocean, sunset, cosmic) |
gradient_direction |
number | Ángulo del degradado en grados (por defecto 135) |
bg_color |
hex | Color de fondo sólido |
pattern |
string | Patrón de fondo (grid, dots, noise, none, …) |
pattern_color |
hex | Color del patrón |
pattern_intensity |
number | Opacidad del patrón (1–30) |
font_family |
string | font-sans, font-jakarta, font-dm, font-outfit, font-space, font-playfair, font-merriweather, font-instrument, font-jetbrains, font-fira |
accent_color |
hex | Color de acento para los resaltados |
auto_text_color |
bool | Deriva el color del texto a partir del fondo (por defecto true) |
title_color |
hex | Sobrescribe el color del título |
subtitle_color |
hex | Sobrescribe el color del subtítulo |
brand_name |
string | Texto de marca/logo (por defecto FastOG) |
brand_logo |
string | URL de la imagen del logo de marca |
layout_mode |
string | split | centered | banner (se aplican variantes específicas de cada plantilla) |
Índice de plantillas — 67 slugs renderizables, 48 seleccionables. La tabla siguiente documenta los
estilos más usados y sus props específicas de plantilla; la lista exhaustiva y generada (etiqueta, categoría,
indicador de retirada y todos los slugs aceptados) está en /openapi.json bajo
x-template-catalogue, y los campos del editor de cada plantilla (clave, etiqueta, tipo, valor por defecto, opciones y
formato de URL) están bajo x-template-fields. Los slugs retirados siguen siendo renderizables para que las URLs que ya están
en circulación sigan funcionando, pero los selectores no los ofrecen.
template |
Plantilla | Categoría | Parámetros adicionales |
|---|---|---|---|
default |
Default | Marca | — |
blog |
Blog Post | Contenido | author, date, domain |
ecommerce |
E-commerce | Comercio | price, original_price, rating, rating_total, features, badge, cta, image, domain |
company |
Company | Marca | domain, logo, tag |
launch |
Product Launch | Marca | kicker, version, tag, cta, domain |
saaslaunch |
SaaS Launch | Marca | kicker, cta, domain |
devtool |
Developer Tool | Desarrollo | version, badge, domain |
game |
Game | Contenido | price, rating, image, domain |
event |
Event | Social | location, host, date, domain |
quote |
Quote | Social | quote, author_name, author_title |
job |
Job Posting | Social | location, department, salary, job_type, domain |
stats |
Stats | Datos | metric, metric_label, delta |
pricing |
Pricing | Comercio | price, period, cta |
podcast |
Podcast | Medios | episode_number, guest_name, guest_role, duration |
video |
Video | Medios | duration, channel, views |
editorial |
Editorial | Contenido | kicker, author, date, domain |
minimal |
Minimal | Marca | domain |
changelog |
Changelog | Desarrollo | version, tag |
corporate |
Corporate | Marca | kicker, tag, domain |
hero |
Hero | Marca | kicker, cta, status, domain |
imageright |
Image Right | Comercio | kicker, price, original_price, rating, rating_total, badge, cta, image, domain |
specgrid |
Spec Grid | Comercio | specs (lista de `Label |
logos |
Logo Wall | Marca | kicker, brand_logos, domain |
notice |
Notice | Social | notice_status, notice_icon, notice_text, date, domain |
testimonial |
Testimonial | Social | quote, author_name, author_title, company, author_avatar, rating, rating_total, quote_style |
logofocus |
Logo Focus | Contenido | kicker, domain |
xheader |
X Header | Social | size, handle, followers, location, website, avatar |
bento |
Bento | Datos | kicker, tiles, domain |
comparison |
Comparison | Comercio | kicker, left_label, left_desc, left_points, right_label, right_desc, right_points, verdict |
timeline |
Timeline | Contenido | kicker, milestones, domain |
countdown |
Countdown | Marca | kicker, target_date, cta, domain |
news |
News | Contenido | headline, byline, author, date, source, image |
code |
Code | Desarrollo | code, language, terminal_title, author, domain |
testimonialpro |
Testimonial Pro | Social | quote, author_name, author_title, company, author_avatar, rating, rating_total, cta |
product |
Product | Comercio | badge, title, price, original_price, rating, rating_total, features, cta, image, layout_mode |
promo |
Promo | Marca | brand_name, benefits, title, subtitle, domain, layout_mode |
devblog |
Dev Blog | Contenido | category, title, subtitle, tags, author, author_title, date, read_time, views, likes, comments, code, language, file_path |
codepost |
Code Post | Contenido | category, date, title, subtitle, author, read_time, code, file_path, language |
statsbar |
Stats Bar | Datos | kicker, metric, metric_label, delta, stats, domain |
changelogpro |
Changelog Pro | Desarrollo | version, tag, title, changes, features, domain |
quotecta |
Quote CTA | Social | quote, author_name, author_title, company, cta, domain |
appscreenshot |
App Screenshot | Medios | badge, title, subtitle, app_name, rating, screenshot, domain |
realestate |
Real Estate | Comercio | title, subtitle, price, beds, baths, sqft, cta_text, status, image_url, domain |
autorental |
Auto Rental | Comercio | title, subtitle, rate_badge, cta_text, fleet_tag, image_url, domain |
restaurant |
Restaurant | Comercio | kicker, title, subtitle, price, cta_text, badge, image_url, domain |
hospitality |
Hospitality | Medios | kicker, title, subtitle, rate, cta_text, image_url, domain |
saasspend |
SaaS Spend | Marca | status_pill, title, subtitle, cta_text, stat_callout, dashboard_image, domain |
brutalist |
Brutalist | Marca | agency_tag, title, subtitle, cta_text, footer_note, domain |
training |
Training | Social | track, dates, title, subtitle, cta_text, location, image_url, domain |
ecosystem |
Ecosystem | Desarrollo | kicker, title, subtitle, apps_list, dock_label, domain |
glassproduct también acepta cta. Las plantillas ecommerce, product, glassproduct y imageright
muestran «Shop now» por defecto; asigna un valor vacío a cta para ocultar la píldora visual.
Tipos de parámetros estructurados
| Tipo | Formato | Ejemplo |
|---|---|---|
list |
Valores separados por comas | features=Fast,Cheap,Secure |
tiles |
Pares label|value separados por líneas |
tiles=Requests|12.4M\nUptime|99.99% |
milestones |
date|title|description separados por líneas |
milestones=Q3 2026|Alpha|Invite-only |
changes |
type|text separados por líneas (added,fixed,improved,removed) |
changes=added|Bento templates |
Respuesta
- 200 OK — Devuelve datos de imagen PNG
- 401 Unauthorized — Autenticación no válida o ausente
- 422 Unprocessable — Parámetros de plantilla no válidos
Respuestas de error
| Código de error | Estado HTTP | Descripción |
|---|---|---|
missing_signature |
401 | Falta el parámetro key o s |
invalid_signature |
401 | Falló la verificación de la firma |
Ejemplo de solicitud
GET /api/v1/og?template=blog&title=Hello%20World&subtitle=A%20test%20post&key=sk_quick_123abc&s=a1b2c3...
Ejemplo de cURL
curl "https://fastog.com/api/v1/og?template=blog&title=Hello%20World&key=sk_quick_123abc&s=<signature>"
Precios y límites
FastOG está restringido por suscripción: se requiere un plan activo de Dynamic API. Las renderizaciones no se facturan por uso: no hay cuota mensual de renderizaciones ni facturación por exceso. El plan es el requisito, y todos los niveles renderizan sin contador. Consulta Precios para ver los niveles y precios actuales.
Las imágenes en caché son gratuitas: las solicitudes servidas desde la caché perimetral de Cloudflare (misma plantilla + parámetros, independientemente de la firma s en una URL previamente cacheada) nunca llegan al origen, por lo que una URL idéntica no consume otra renderización.
Limpio por defecto: cada renderización es limpia: sin marca de agua en ningún plan, y tampoco en el probador gratuito de imágenes OG, las vistas previas de Studio ni las exportaciones de Studio. Todavía se admite una prop de renderización fastog_watermark para quienes soliciten explícitamente una insignia "Made with FastOG", pero nada la activa automáticamente.
Relacionado
- Documentación — Todas las guías y referencias de FastOG
- Probador de imágenes OG gratuito — Previsualiza sin una cuenta
- Guía de inicio rápido — incluye el flujo de arquitectura (firma en el momento del renderizado)
- Guía de firmas HMAC
- Validación HMAC
- Tutorial de JavaScript