Authentification
Envoyez un en-tête ApiKey pour une clé de projet avec template:render. Il ne s’agit pas d’une session de navigateur.
POST /v1/pdf/render
| Champ JSON | Signification |
|---|---|
template_id |
UUID de modèle requis, pas un slug |
version |
Numéro de version ; omis sélectionne la version actuelle du modèle |
variant |
Nom de variante facultatif |
parameters |
Objet d’entrée correspondant au modèle |
La cible doit être publiée. Le rendu utilise du contenu validé, et non des modifications non enregistrées du navigateur. L’acceptation est HTTP 202 avec render_id, status: queued et status_url, et non les octets PDF ou une garantie de succès.
GET /v1/renders/{render_id}
Utilisez la même clé. La réponse inclut render_id, status et des champs de résultat facultatifs tels que error_message, duration_ms et download_url. Le traitement est pending ; les états terminaux sont success, failed et quota_exceeded.
Immédiatement après une réponse 202, le point de terminaison d’état peut renvoyer brièvement 404 pendant que le workflow crée sa ligne d’historique. Réessayez cet ID de rendu nouvellement accepté avec un court délai et un délai limité. Un code 404 persistant, un identifiant inconnu ou une inadéquation projet/clé nécessite une enquête ; ne soumettez pas à nouveau POST simplement parce que la première recherche de statut a renvoyé 404.
GET /v1/renders/{render_id}/download
Utilisez une clé de projet appropriée. Une sortie réussie renvoie les octets PDF lorsqu’ils sont disponibles. Il ne s’agit pas d’une URL publique permanente.
Erreurs et tentatives
L’authentification, la propriété et les versions manquantes/non publiées peuvent échouer avant l’acceptation. Les échecs de traitement ultérieurs apparaissent via le statut. Corrigez les demandes/autorisations 4xx avant de réessayer et ne supposez pas la prise en charge publique de l’idempotence POST.
Réponse d’erreur
Les erreurs utilisent code, description et details en option. Lisez le code pour décider quoi corriger ; un rendu accepté peut échouer plus tard et signaler error_message via le statut.
{"code":"PDF_TEMPLATE_VERSION_NOT_PUBLISHED","description":"template version is not published","details":[]}
Une réponse de statut réussie peut inclure :
{"render_id":"<render-uuid>","status":"success","duration_ms":1200,"download_url":"/v1/renders/<render-uuid>/download"}
Un échec de traitement est un résultat de statut, par exemple :
{"render_id":"<render-uuid>","status":"failed","error_message":"Failed to compile template"}
Portée
Cette référence couvre les points de terminaison de rendu publics, et non toutes les gestions de session uniquement API utilisées par l’application. Sondage avec des retards et un délai limité ; conserver l’ID de rendu après acceptation.