Ironfang Render utilise une API HTTPS standard : Node.js peut donc l'appeler avec fetch, sans SDK. Une requête réussie renvoie directement les octets de l'image, prêts à être écrits dans un fichier.
Obtenir une clé
Créez une clé API dans le portail. Le secret ne s'affiche qu'une fois et il est stocké sous forme de hachage. Conservez-le dans une variable d'environnement nommée IRONFANG_API_KEY plutôt que dans le fichier source ; l'exemple ci-dessous l'y lit.
export IRONFANG_API_KEY="if_live_..."Réaliser une capture d'écran
import { writeFile } from 'node:fs/promises';
const key = process.env.IRONFANG_API_KEY;
if (!key) throw new Error('Set IRONFANG_API_KEY to your Ironfang API key.');
const resp = await fetch('https://api.ironfang.uk/render/v1/screenshot', {
method: 'POST',
headers: {
Authorization: `Bearer ${key}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ url: 'https://example.com', width: 1280 }),
});
if (!resp.ok) {
const { error } = await resp.json();
throw new Error(`${resp.status} ${error.code}: ${error.message}`);
}
await writeFile('shot.png', Buffer.from(await resp.arrayBuffer()));Exécutez-le, et la capture d'écran est enregistrée sous le nom shot.png dans le répertoire courant :
node shot.mjsGérer les erreurs
Les réponses de rendu réussies sont binaires. Les erreurs sont en JSON, de la forme {"error": {"code", "message"}}. Une clé absente ou non reconnue renvoie 401 invalid_api_key. Une clé sans la portée render:render renvoie 403 insufficient_scope.
// fetch does not throw for 4xx or 5xx responses. Check resp.ok
// before writing the response body to an image file.PDF et modèles
La même forme d'appel fonctionne pour les PDF sur /render/v1/pdf, et pour les images issues de modèles sur /render/v1/image/{id}. Seuls le chemin et le corps changent.
Pour aller plus loin
- API de capture d'écran : tailles de fenêtre d'affichage, formats, captures épurées et tarifs
- Captures d'écran de page entière : capturer toute la page défilante en une seule image
- Captures d'écran de sites web en Python
- Captures d'écran de sites web en PHP
- Référence complète de l'API

