Remplissez un PDF Formulaire
PDF4me Remplir un formulaire PDF remplit les champs AcroForm dans un PDF modèle avec des valeurs provenant d'un JSON objet dans un seul REST appel. Envoyez le modèle comme Base64 ou un public URL, envoyez les valeurs du champ sous forme de chaîne de caractères tableau de donnéeset recevez le formulaire rempli PDF sous forme d'octets binaires (200) ou via une requête d'en-tête Location URL (202). Basculer Conserver le PDF modifiable pour fournir un formulaire modifiable ou un enregistrement statique aplati.
Authentification de votre API Demande
Chaque PDF4me REST L'appel doit inclure votre API clé dans le Authorization En-tête : Authentification de base. Récupérez ou renouvelez votre clé depuis le tableau de bord développeur.
Point de terminaison
/api/v2/RemplirPdfFormhttps://api.pdf4me.com/api/v2/FillPdfFormInformations importantes à ne pas manquer
tableau de données est une chaîne de caractères, pas un objetJSON.stringify({...}) Avant l'envoi. L'envoi d'un objet imbriqué renvoie une erreur de désérialisation.IsAsync : vrai le API peut répondre 202 et un en-tête Location. GET que URL (même autorisation) jusqu'à ce qu'elle renvoie 200 avec le PDF binaire. Standard PDF4me modèle asynchrone (pdf4meAsyncRequest).HTTP installation
Méthode: POSTE
URL: https://api.pdf4me.com/api/v2/FillPdfForm
Type de contenu : application/json
Autorisation: Basique <votre PDF4me API clé>
Envoyer IsAsync : vrai dans le corps. 200 renvoie le rempli PDF sous forme d'octets binaires. 202 renvoie un Emplacement En-tête avec un sondage URL; GET que URL avec le même en-tête d'autorisation jusqu'à ce qu'il renvoie 200 avec le PDF binaire (même convention que pdf4meAsyncRequest).
Matrice des variantes (pertinente pour Postman)
Trois variantes de saisie couvrent tous les appels Postman / curl / SDK. Choisissez la variante qui correspond à votre situation. PDF Les données du modèle et du formulaire sont en direct.
| Variante | Modèle PDF (templateDocContent) | Champs de formulaire | Champs API obligatoires |
|---|---|---|---|
| A | Base64 PDF | JSON object → stringify → dataArray | All rows in the JSON-form table below. |
| B | Public PDF URL | JSON object → stringify → dataArray | Same as A; templateDocContent is the URL string. |
| C | Base64 PDF | Base64-encoded JSON file → decode → stringify into dataArray | Same as A; build dataArray from the decoded JSON. |
API champs corporels
Toujours envoyé
| Champ | Requis | Taper | Par défaut / notes |
|---|---|---|---|
templateDocName | Yes* | string | Filename of the template, e.g. template.pdf. Derived from the source URL filename or defaulted to template.pdf. Used for downstream output naming. |
templateDocContent | Yes | string | Base64-encoded PDF (no data: prefix) OR a publicly reachable https URL to the PDF. |
KeepPdfEditable | No | boolean | Default false. Set true to keep AcroForm fields editable in the output PDF; false flattens the form into static text. |
IsAsync | Yes | boolean | Default true. Toggles the 200 / 202 + Location async pattern. |
*nom_du_modèle doit toujours être spécifié dans la requête ; choisissez un nom de fichier pertinent afin que les noms des fichiers de sortie soient clairs en aval.
Lorsque l'entrée du formulaire est JSON
| Champ | Requis | Taper | Notes |
|---|---|---|---|
dataArray | Yes | string | JSON.stringify({ ... }). Keys = AcroForm field names; values = strings to fill. |
inputDataType | Yes | string | Always "json" for this path. |
outputType | Yes | string | Always "pdf". |
Règles relatives aux données de formulaire (JSON chemin)
| Règle | Détail |
|---|---|
| Shape | Single object: {"fieldName": "value", ...}. |
| Not allowed | Empty array, or an array of multiple objects. |
| Base64 form input | Decode the UTF-8 JSON file, then JSON.stringify into dataArray. In Postman: put the decoded-then-stringified result directly into dataArray. |
| Data URL | Strip the data:...;base64, prefix if present (applies to the PDF Base64 in templateDocContent). |
Exemples de charges utiles
Variante A. PDF Base64 + formulaire JSON
{
"templateDocName": "application-form.pdf",
"templateDocContent": "JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"inputDataType": "json",
"outputType": "pdf",
"KeepPdfEditable": false,
"IsAsync": true
}
tableau de données doit être une chaîne de caractères, et non une chaîne imbriquée JSON objet:
"dataArray": "{"firstname":"John","lastname":"Doe"}"
Variante B. URL du PDF + formulaire JSON
{
"templateDocName": "application-form.pdf",
"templateDocContent": "https://example.com/forms/application-form.pdf",
"inputDataType": "json",
"outputType": "pdf",
"KeepPdfEditable": false,
"IsAsync": true
}
Variante C. PDF Base64 + formulaire à partir de JSON Base64
Espace réservé dans le dépôt : eyJmaXJzdG5hbWUiOiJKb2huIn0= → {"firstname":"John"}.
Équivalent API corps après avoir décodé le formulaire JSON:
{
"templateDocName": "application-form.pdf",
"templateDocContent": "JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"dataArray": "{\"firstname\": \"John\"}",
"inputDataType": "json",
"outputType": "pdf",
"KeepPdfEditable": false,
"IsAsync": true
}
Facultatif. Conserver le formulaire modifiable.
{
"templateDocName": "application-form.pdf",
"templateDocContent": "https://example.com/forms/application-form.pdf",
"dataArray": "{\"firstname\": \"John\", \"lastname\": \"Doe\"}",
"inputDataType": "json",
"outputType": "pdf",
"KeepPdfEditable": true,
"IsAsync": true
}
Conseils pour la collecte par le facteur
Exemple curl
curl -X POST https://api.pdf4me.com/api/v2/FillPdfForm \
-H "Content-Type: application/json" \
-H "Authorization: Basic YOUR_API_KEY" \
-d '{
"templateDocName": "application-form.pdf",
"templateDocContent": "https://example.com/forms/application-form.pdf",
"dataArray": "{\"firstname\":\"John\",\"lastname\":\"Doe\"}",
"inputDataType": "json",
"outputType": "pdf",
"KeepPdfEditable": false,
"IsAsync": true
}' \
--output filled-form.pdf
Référence rapide : obligatoire vs facultatif (Postman)
| Champ | A (PDF b64) | B (URL du PDF) | C (formulaire b64 → JSON) |
|---|---|---|---|
templateDocName | Required | Required | Required |
templateDocContent | Required (b64) | Required (URL) | Required (b64) |
dataArray | Required | Required | Required (from decoded JSON) |
inputDataType | Required (json) | Required (json) | Required (json) |
outputType | Required (pdf) | Required (pdf) | Required (pdf) |
IsAsync | Required (true) | Required (true) | Required (true) |
KeepPdfEditable | Optional | Optional | Optional |