Elysia Tools Docs
FR
Langue
ZHESPTRUFRDEEN
Retour au site
Parcourir les outils

PDF Tools

Remplissage par lot de formulaire PDF

Remplit un modèle de formulaire PDF avec un tableau d'enregistrements et produit un PDF par enregistrement (ZIP) ou un PDF fusionné

file· Résultat fichierOuvrir l'outil

Démarrage rapide

Appelez cet outil depuis votre code en trois langages.

cURL
# 1) Request a presigned URL → returns { uploadUrl, storageKey }
curl -X POST 'https://api.elysiatools.com/api/upload/presign/pdf-form-fill-batch' \
  -H 'Content-Type: application/json' \
  -d '{"filename":"templatePdf.ext","contentType":"application/octet-stream","size":12345}'

# 2) PUT the file bytes directly to the presigned uploadUrl
curl -X PUT '<presigned uploadUrl>' \
  --data-binary @/path/to/file.ext

# 3) Call the tool, passing the returned storageKey for each file field
curl -X POST 'https://api.elysiatools.com/fr/api/tools/pdf-form-fill-batch' \
  -F 'templatePdf=uploads/2026/01/01/your-tool-1700000000000-abc123.ext' \
  -F 'recordsJson=[{"name":"Alice Zhang","course":"Advanced TypeScript","date":"2026-06-16"},{"name":"Bob Chen","course":"Go Fundamentals","date":"2026-06-16"},{"name":"Carol Lee","course":"Rust Systems","date":"2026-06-16"}]' \
  -F 'outputMode=zip' \
  -F 'nameField=name' \
  -F 'flattenEach=true'

© 2026 Elysia Tools. Documentation développeur.

Retour au siteParcourir les outils

Référence de l'API

Envoyez une requête POST avec vos entrées en JSON. Les paramètres de type fichier nécessitent un upload préalable.

Point d'accès

HTTP
POST https://api.elysiatools.com/fr/api/tools/pdf-form-fill-batch

Paramètres

NomTypeRequisDescription
templatePdffileupload requisOui—
recordsJsontextareaOuiJSON array of objects. Each object fills one copy of the template.
outputModeselectNon—
nameFieldtextNonRecord field used to name each output PDF in ZIP mode
flattenEachcheckboxNonFlatten each filled form so it is non-editable
Les paramètres de type fichier doivent d'abord être uploadés via POST /upload/pdf-form-fill-batch ; le filePath renvoyé est ensuite transmis au champ correspondant.

Format de réponse

Résultat fichier

JSON
{
  "filePath": "/public/processing/randomid.ext",
  "fileName": "output.ext",
  "contentType": "application/octet-stream",
  "size": 1024,
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}

Intégration MCP

Ajoutez cet outil à votre serveur Model Context Protocol pour que les agents IA puissent le lister et l'appeler.

Configuration du serveur

Ajoutez ce bloc à la configuration de votre client MCP :

mcp.json
{
  "mcpServers": {
    "elysiatools-pdf-form-fill-batch": {
      "name": "pdf-form-fill-batch",
      "description": "Remplit un modèle de formulaire PDF avec un tableau d'enregistrements et produit un PDF par enregistrement (ZIP) ou un PDF fusionné",
      "baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=pdf-form-fill-batch",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Lister les outils disponibles

Après connexion au point d'accès SSE, listez les outils exposés :

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

Appeler cet outil

Appelez l'outil par son id ; les arguments sont construits à partir de ses paramètres :

tools/call
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "pdf-form-fill-batch",
    "arguments": {
  "templatePdf": "https://example.com/file.ext",
  "recordsJson": "[{\"name\":\"Alice Zhang\",\"course\":\"Advanced TypeScript\",\"date\":\"2026-06-16\"},{\"name\":\"Bob Chen\",\"course\":\"Go Fundamentals\",\"date\":\"2026-06-16\"},{\"name\":\"Carol Lee\",\"course\":\"Rust Systems\",\"date\":\"2026-06-16\"}]",
  "outputMode": "zip",
  "nameField": "name",
  "flattenEach": true
}
  }
}
Chaînez plusieurs outils dans une session avec une liste toolId séparée par des virgules, ex. /mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp (20 max).
Les paramètres fichier acceptent uniquement une URL de fichier publique (https://…). Les chemins locaux, les data: URI et les chaînes Base64 ne sont pas pris en charge.

Des questions ou un problème ? Contactez [email protected]

Parcourir les outils
Ouvrir l'outil