Vai al contenuto principale
PulsConv Logo
it
API

Pipeline (ricette)

Un singolo lavoro concatena diversi passaggi tool_id sullo stesso file server temporaneo. Il campo tool_id nella tua richiesta deve corrispondere al primo passaggio della pipeline.

Webhook: crea una chiave API (POST /v1/api-keys con intestazione admin), configura PATCH /v1/api-keys/me/webhook, quindi invia lavori con autorizzazione: Bearer sk_…. Firma: intestazioni X-PulsConv-Signature e X-PulsConv-Timestamp (HMAC-SHA256 del corpo JSON).

Esempi JSON (POST /v1/jobs)

PDF: comprimi e poi proteggi

{
  "tool_id": "tool_pdf_compress",
  "upload_keys": ["uploads/xxx.pdf"],
  "options": { "quality": "ebook" },
  "pipeline": [
    { "tool_id": "tool_pdf_compress", "options": { "quality": "ebook" } },
    { "tool_id": "tool_pdf_protect", "options": { "password": "secret" } }
  ]
}

Immagine: ridimensiona quindi ottimizza per il web

{
  "tool_id": "tool_image_resize",
  "upload_keys": ["uploads/photo.jpg"],
  "options": { "width": 1200, "height": 1200, "mode": "contain" },
  "pipeline": [
    { "tool_id": "tool_image_resize", "options": { "width": 1200, "height": 1200, "mode": "contain" } },
    { "tool_id": "tool_image_optimize_web", "options": { "max_width": 1200, "quality": 82 } }
  ]
}

cURL example (POST /api/v1/jobs)

curl -sS -X POST "$API/api/v1/jobs" \
  -H "Content-Type: application/json" \
  -d '{
    "tool_id": "tool_pdf_compress",
    "upload_keys": ["uploads/mon.pdf"],
    "options": { "quality": "ebook" }
  }'

n8n — HTTP node

HTTP Request node → Method POST → URL {{$env.PULSCONV_API}}/api/v1/jobs
Body (JSON) : même objet que les exemples ci-dessus.
Réponse : { "id": "...", "status": "queued" }

For a webhook delivery log: keep traces on your endpoint (n8n, Zapier, your API); PulsConv can sign callbacks when you configure a secret.