API
Rurociągi (przepisy)
Pojedyncze zadanie łączy kilka kroków identyfikatora narzędzia w tym samym tymczasowym pliku serwera. Pole Tool_id w Twoim żądaniu musi odpowiadać pierwszemu etapowi potoku.
Webhooks: utwórz klucz API (POST /v1/api-keys z nagłówkiem admin), skonfiguruj PATCH /v1/api-keys/me/webhook, a następnie wyślij zadania z Autoryzacją: Bearer sk_…. Podpis: nagłówki X-PulsConv-Signature i X-PulsConv-Timestamp (HMAC-SHA256 treści JSON).
Przykłady JSON (POST /v1/jobs)
PDF: skompresuj, a następnie chroń
{
"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" } }
]
}Obraz: zmień rozmiar, a następnie zoptymalizuj pod kątem sieci
{
"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.
