Traitement par lots
POST /v1/renders/batch rend jusqu’à 50 images dans une seule demande. Les éléments s’exécutent
simultanément et sont facturés par élément ; une erreur sur un élément n’abandonne jamais les autres.
# Deux formes
Un template, de nombreux ensembles de modifications — le cas courant :
curl https://api.mostlyrender.com/v1/renders/batch \
-H "Authorization: Bearer mr_live_…" \
-H "Content-Type: application/json" \
-d '{
"template": "tpl_abc",
"output": "png",
"items": [
{ "title": "One" },
{ "title": "Two" },
{ "title": "Three" }
]
}'
Chaque élément est un objet modifications, ou { "modifications": {…}, "output": "…" } pour
remplacer le format par élément.
Rendus hétérogènes — différents templates dans un seul appel :
{
"renders": [
{ "template": "tpl_a", "modifications": { "title": "A" }, "output": "png" },
{ "template": "tpl_b", "modifications": { "title": "B" }, "output": "pdf" }
]
}
# Fusionner en un seul PDF multi-pages
Ajoutez merge: true pour rendre chaque élément comme une page et les assembler en un seul
PDF multi-pages — l’approche pour les documents juridiques, rapports et autres documents multi-pages :
{
"template": "tpl_report",
"merge": true,
"items": [
{ "title": "Cover" },
{ "title": "Summary" },
{ "title": "Appendix" }
]
}
Au lieu de résultats par élément, vous obtenez un seul document :
{ "id": "rnd_doc", "url": "https://img.mostlyrender.com/mostlyrender/renders/rnd_doc.pdf", "output": "pdf", "pages": 3 }
# Réponse
Sans merge, les résultats sont positionnels — une entrée par élément :
{
"results": [
{ "id": "rnd_1", "url": "https://img.mostlyrender.com/mostlyrender/renders/rnd_1.png", "output": "png" },
{ "error": "render failed" }
],
"count": 2,
"ok": 1
}
results est positionnel — chaque entrée est soit un résultat de rendu, soit un objet
{ "error" }. count est le total traité ; ok est le nombre de réussites.
# SDK
res = mr.render_batch(
template_id="tpl_abc",
output="png",
items=[{"title": "One"}, {"title": "Two"}, {"title": "Three"}],
)
print(res["count"], res["ok"])
Pour les traitements par lots supérieurs à 50, divisez en plusieurs demandes, ou utilisez les tâches asynchrones.