Référence de l'API OG image
La référence de l'API OG image couvre le point de terminaison, les paramètres et le catalogue de modèles pour générer des images Open Graph dynamiques avec FastOG. L'API est soumise à un abonnement — un plan Dynamic API actif est requis, mais les rendus eux-mêmes ne sont pas comptés : il n'y a ni quota mensuel de rendus ni facturation au dépassement. Les URL signées HMAC (signer) sécurisent chaque requête. Inscrivez-vous, choisissez un plan Dynamic API, puis créez votre clé API et votre secret HMAC dans le dashboard ; les rendus API payants sont sans surprise. Le contrat OpenAPI généré constitue la liste faisant autorité, lisible par machine, des paramètres, des codes d'erreur et des slugs de modèles.
URL de base
https://fastog.com/api/v1/og
Authentification
Toutes les requêtes nécessitent une authentification par signature HMAC-SHA256. La clé publique key et la signature s sont des paramètres de requête ; l'authentification par en-tête n'est pas prise en charge actuellement. Consultez la documentation HMAC pour plus de détails.
Endpoint
GET /api/v1/og
Génère une image Open Graph dynamique à partir des paramètres fournis.
Paramètres de requête
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
template |
string | Non | Nom du modèle (par défaut : default) |
title |
string | Oui | Titre principal. Obligatoire — une couverture sans titre ne constitue pas un aperçu utile. |
subtitle |
string | Non | Texte de sous-titre ou de description |
key |
string | Oui | Clé API complète |
s |
string | Oui | Signature HMAC-SHA256 (64 caractères hexadécimaux) |
Paramètres spécifiques aux modèles
Chaque modèle accepte les paramètres communs ci-dessous ainsi que ses paramètres spécifiques (voir le tableau d'index). Le paramètre de requête template détermine la mise en page utilisée (par défaut : default).
Paramètres communs (tous les modèles)
| Paramètre | Type | Description |
|---|---|---|
title |
string | Texte du titre principal |
subtitle |
string | Texte complémentaire |
tags |
list | Libellés de tags séparés par des virgules |
theme |
string | dark | light | glass | solid | midnight | vivid | paper | glass_light | custom |
gradient_preset |
string | Préréglage de dégradé nommé (par ex. indigo, ocean, sunset, cosmic) |
gradient_direction |
number | Angle du dégradé en degrés (par défaut 135) |
bg_color |
hex | Couleur d'arrière-plan unie |
pattern |
string | Motif d'arrière-plan (grid, dots, noise, none, …) |
pattern_color |
hex | Couleur du motif |
pattern_intensity |
number | Opacité du motif (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 | Couleur d'accentuation pour les mises en évidence |
auto_text_color |
bool | Déduire la couleur du texte à partir de l'arrière-plan (par défaut true) |
title_color |
hex | Remplacer la couleur du titre |
subtitle_color |
hex | Remplacer la couleur du sous-titre |
brand_name |
string | Texte de marque/logo (par défaut FastOG) |
brand_logo |
string | URL de l'image du logo de marque |
layout_mode |
string | split | centered | banner (des variantes spécifiques au modèle s'appliquent) |
Index des modèles — 67 slugs rendables, 48 sélectionnables. Le tableau ci-dessous documente les
apparences les plus utilisées et leurs props spécifiques au modèle ; la liste exhaustive générée (libellé, catégorie,
indicateur de retrait et chaque slug accepté) se trouve dans /openapi.json sous
x-template-catalogue, et les champs d'éditeur de chaque modèle (clé, libellé, type, valeur par défaut, options et
format d'URL) se trouvent sous x-template-fields. Les slugs retirés restent rendables afin que les URL déjà en
circulation continuent de fonctionner, mais ils ne sont pas proposés par les sélecteurs.
template |
Modèle | Catégorie | Paramètres supplémentaires |
|---|---|---|---|
default |
Par défaut | Marque | — |
blog |
Article de blog | Contenu | author, date, domain |
ecommerce |
E-commerce | Commerce | price, original_price, rating, rating_total, features, badge, cta, image, domain |
company |
Entreprise | Marque | domain, logo, tag |
launch |
Lancement de produit | Marque | kicker, version, tag, cta, domain |
saaslaunch |
Lancement SaaS | Marque | kicker, cta, domain |
devtool |
Outil développeur | Développeur | version, badge, domain |
game |
Jeu | Contenu | price, rating, image, domain |
event |
Événement | Social | location, host, date, domain |
quote |
Citation | Social | quote, author_name, author_title |
job |
Offre d'emploi | Social | location, department, salary, job_type, domain |
stats |
Statistiques | Données | metric, metric_label, delta |
pricing |
Tarifs | Commerce | price, period, cta |
podcast |
Podcast | Média | episode_number, guest_name, guest_role, duration |
video |
Vidéo | Média | duration, channel, views |
editorial |
Éditorial | Contenu | kicker, author, date, domain |
minimal |
Minimal | Marque | domain |
changelog |
Journal des modifications | Développeur | version, tag |
corporate |
Corporate | Marque | kicker, tag, domain |
hero |
Hero | Marque | kicker, cta, status, domain |
imageright |
Image à droite | Commerce | kicker, price, original_price, rating, rating_total, badge, cta, image, domain |
specgrid |
Grille de spécifications | Commerce | specs (liste de `Label |
logos |
Mur de logos | Marque | kicker, brand_logos, domain |
notice |
Annonce | Social | notice_status, notice_icon, notice_text, date, domain |
testimonial |
Témoignage | Social | quote, author_name, author_title, company, author_avatar, rating, rating_total, quote_style |
logofocus |
Logo en vedette | Contenu | kicker, domain |
xheader |
En-tête X | Social | size, handle, followers, location, website, avatar |
bento |
Bento | Données | kicker, tiles, domain |
comparison |
Comparaison | Commerce | kicker, left_label, left_desc, left_points, right_label, right_desc, right_points, verdict |
timeline |
Chronologie | Contenu | kicker, milestones, domain |
countdown |
Compte à rebours | Marque | kicker, target_date, cta, domain |
news |
Actualités | Contenu | headline, byline, author, date, source, image |
code |
Code | Développeur | code, language, terminal_title, author, domain |
testimonialpro |
Témoignage Pro | Social | quote, author_name, author_title, company, author_avatar, rating, rating_total, cta |
product |
Produit | Commerce | badge, title, price, original_price, rating, rating_total, features, cta, image, layout_mode |
promo |
Promo | Marque | brand_name, benefits, title, subtitle, domain, layout_mode |
devblog |
Blog dev | Contenu | category, title, subtitle, tags, author, author_title, date, read_time, views, likes, comments, code, language, file_path |
codepost |
Article de code | Contenu | category, date, title, subtitle, author, read_time, code, file_path, language |
statsbar |
Barre de statistiques | Données | kicker, metric, metric_label, delta, stats, domain |
changelogpro |
Journal des modifications Pro | Développeur | version, tag, title, changes, features, domain |
quotecta |
Citation CTA | Social | quote, author_name, author_title, company, cta, domain |
appscreenshot |
Capture d'écran d'application | Média | badge, title, subtitle, app_name, rating, screenshot, domain |
realestate |
Immobilier | Commerce | title, subtitle, price, beds, baths, sqft, cta_text, status, image_url, domain |
autorental |
Location de voiture | Commerce | title, subtitle, rate_badge, cta_text, fleet_tag, image_url, domain |
restaurant |
Restaurant | Commerce | kicker, title, subtitle, price, cta_text, badge, image_url, domain |
hospitality |
Hôtellerie | Média | kicker, title, subtitle, rate, cta_text, image_url, domain |
saasspend |
Dépenses SaaS | Marque | status_pill, title, subtitle, cta_text, stat_callout, dashboard_image, domain |
brutalist |
Brutaliste | Marque | agency_tag, title, subtitle, cta_text, footer_note, domain |
training |
Formation | Social | track, dates, title, subtitle, cta_text, location, image_url, domain |
ecosystem |
Écosystème | Développeur | kicker, title, subtitle, apps_list, dock_label, domain |
glassproduct accepte également cta. Les modèles ecommerce, product, glassproduct et imageright
affichent « Shop now » par défaut ; définissez cta sur une valeur vide pour masquer la pastille visuelle.
Types de paramètres structurés
| Type | Format | Exemple |
|---|---|---|
list |
Valeurs séparées par des virgules | features=Fast,Cheap,Secure |
tiles |
Paires label|value séparées par des retours à la ligne |
tiles=Requests|12.4M\nUptime|99.99% |
milestones |
date|title|description séparés par des retours à la ligne |
milestones=Q3 2026|Alpha|Invite-only |
changes |
type|text séparés par des retours à la ligne (added,fixed,improved,removed) |
changes=added|Bento templates |
Réponse
- 200 OK — Renvoie les données de l'image PNG
- 401 Unauthorized — Authentification invalide ou manquante
- 422 Unprocessable — Paramètres de modèle invalides
Réponses d'erreur
| Code d'erreur | Statut HTTP | Description |
|---|---|---|
missing_signature |
401 | Paramètre key ou s manquant |
invalid_signature |
401 | Échec de la vérification de la signature |
Exemple de requête
GET /api/v1/og?template=blog&title=Hello%20World&subtitle=A%20test%20post&key=sk_quick_123abc&s=a1b2c3...
Exemple cURL
curl "https://fastog.com/api/v1/og?template=blog&title=Hello%20World&key=sk_quick_123abc&s=<signature>"
Tarification et limites
FastOG est soumis à un abonnement : un plan Dynamic API actif est requis. Les rendus ne sont pas comptabilisés — il n'y a pas de quota mensuel de rendus ni de facturation au dépassement. Le plan est le seul prérequis, et chaque niveau effectue des rendus sans compteur. Consultez Tarification pour les niveaux et prix actuels.
Les images en cache sont gratuites : les requêtes servies depuis le cache edge de Cloudflare (même
modèle + mêmes paramètres, quelle que soit la signature s sur une URL précédemment mise en cache)
n'atteignent jamais l'origine, donc une URL identique ne consomme pas un nouveau rendu.
Propre par défaut : chaque rendu est propre — aucun filigrane sur quelque plan que ce soit, et aucun
non plus sur le testeur d'OG image gratuit, les aperçus Studio ou les exports Studio. Une prop de rendu
fastog_watermark reste prise en charge pour les appelants qui demandent explicitement un badge « Made with FastOG »,
mais rien ne l'active automatiquement.
Voir aussi
- Documentation — Tous les guides et références FastOG
- Testeur d'images OG gratuit — Prévisualisez sans compte
- Guide de démarrage rapide — inclut le flux d'architecture (signature au moment du rendu)
- Guide de signature HMAC
- Validation HMAC
- Tutoriel JavaScript