Mapa stránek
Čeština
EUR €
NOVÉ
Claude & ChatGPT — S plným výkonem.
Všechny dokumenty · 409+ AI nástrojů · Nastavení za 30 s
Claude· ChatGPT· Cursor· Gemini· +50
Připojit nyní
Platforma
50+ AI modulů a nástrojů
Řešení
Odvětví, procesy, rizika
Vývojář
API, SDK, dokumentace
Zdroje
Návody, blog, podpora
Společnost
Tým, partneři, kariéra
Ceny
Webhooky

Webhooky Události v reálném čase

Zpětná volání podepsaná HMAC pro každou událost dokumentu, úlohy, pracovního prostoru a úkolu. 22 typů událostí, exponenciální opakování, doporučeno HTTPS.

22+
Typy událostí
<1s
Latence
HMAC
Podepsáno SHA-256
POST /vas-koncovy-bod
Hlavičky požadavku
X-PaperOffice-Event: document.processed
X-PaperOffice-Event-ID: a3b7f9c1d4e8b2a6
X-PaperOffice-Signature: sha256=9f8a2c…
Tělo JSON
{
  "event_type": "document.processed",
  "event_id": "a3b7f9c1d4e8b2a6",
  "timestamp": "2026-04-17T14:23:11Z",
  "subscription_id": 42,
  "data": { "pofid": "doc_01HZY8K3…" }
}
Podpis ověřen HMAC-SHA256 · ID události zaznamenáno

Důvěra předních společností po celém světě

Dostupné události

22 typů událostí, seskupených podle entity

Přihlaste se k odběru jednotlivých událostí nebo použijte zástupný znak * pro vše.

Dokumenty

14
  • dokument.nahraný Nový dokument nahrán do pracovního prostoru
  • dokument.vytvořen Alias pro document.uploaded (kompatibilita)
  • dokument.zpracován Pipeline OCR/IDP úspěšně dokončena
  • dokument.upraven Metadata, štítky nebo obsah aktualizovány
  • dokument.smazán Dokument přesunut do koše
  • dokument.obnoven Dokument obnoven z koše
  • document.moved Dokument přesunut mezi pracovními prostory
  • dokument.verze_vytvořena Nová verze přidána k existujícímu dokumentu
  • dokument.cyklus_změněn Změněn stav retence/archivace
  • dokument.komentář_přidán Komentář přidaný k dokumentu
  • dokument.poznámka_přidána Připojena interní poznámka
  • dokument.štítek_přidán Štítek přiřazen dokumentu
  • dokument.právní_zápora_uložena Právní zádrž aktivována (neměnné)
  • dokument.právní_zápora_zrušena Právní zádrž uvolněna

Úlohy

3
  • úloha.dokončena Asynchronní úloha úspěšně dokončena
  • úloha.selhala Asynchronní úloha terminálně selhala
  • úloha.průběh Aktualizace průběhu během dlouho běžících úloh

Pracovní prostory

2
  • pracovní_prostor.sdílen Pracovní prostor sdílen s uživatelem nebo týmem
  • pracovní_prostor.zrušeno_sdílení Přístup k pracovnímu prostoru odvolán

Úkoly

3
  • úkol.vytvořen Nový úkol vytvořen
  • úkol.dokončeno Úkol označen jako dokončený
  • úkol.po_terminu Úkol překročil termín splnění

Přihlaste se k odběru ["*"] pro přijímání každé události vašeho účtu.

Datová část a hlavičky

Každé doručení následuje stejné schéma

Prediktabilní tělo JSON, pět podepsaných HTTP hlaviček, časová razítka ISO-8601 UTC.

Tělo požadavku (JSON)
{
  "event_type": "document.processed",
  "event_id": "a3b7f9c1d4e8b2a6c9f1d4e7b2a5c8f1",
  "timestamp": "2026-04-17T14:23:11Z",
  "subscription_id": 42,
  "data": {
    "pofid": "doc_01HZY8K3M7P2Q9R5T1V6W4X2Y8",
    "workspace_id": 17,
    "filename": "invoice-2026-04-17.pdf",
    "mime_type": "application/pdf",
    "size_bytes": 284521,
    "processing_result": {
      "ocr_done": true,
      "classification": "invoice",
      "confidence": 0.98
    }
  }
}
Hlavičky HTTP požadavku
Content-Type application/json Vždy JSON, kódováno UTF-8
User-Agent PaperOffice-Webhook/1.0 Pevný identifikátor pro allowlisty firewallu
X-PaperOffice-Event document.processed Typ doručované události
X-PaperOffice-Event-ID a3b7f9c1… 128bitové jedinečné ID. Použijte pro idempotenci.
X-PaperOffice-Subscription-ID 42 ID předplatného přijímajícího událost
X-PaperOffice-Signature sha256=… HMAC-SHA256 surového těla, hexadecimálně kódováno
Ověření podpisu

Ověřte každé doručení pomocí HMAC-SHA256

Vypočítejte HMAC-SHA256 nad surovým tělem požadavku pomocí vašeho sdíleného tajného klíče a poté porovnejte s X-PaperOffice-Signature pomocí porovnání s konstantním časem (hash_equals, crypto.timingSafeEqual).

import crypto from 'crypto';
import express from 'express';
const app = express();

const WEBHOOK_SECRET = process.env.PAPEROFFICE_WEBHOOK_SECRET;

app.post('/webhooks/paperoffice', express.raw({ type: 'application/json' }), (req, res) => {
  const signature = req.header('X-PaperOffice-Signature'); // "sha256=..."
  const eventId   = req.header('X-PaperOffice-Event-ID');
  const eventType = req.header('X-PaperOffice-Event');

  const expected = 'sha256=' + crypto
    .createHmac('sha256', WEBHOOK_SECRET)
    .update(req.body)
    .digest('hex');

  if (!signature || !crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected))) {
    return res.status(401).send('invalid signature');
  }

  const event = JSON.parse(req.body.toString());
  // eventId als Idempotency-Key speichern -> gleiche ID nicht zweimal verarbeiten
  console.log(eventType, event.data);
  res.status(200).send('ok');
});
Opakování a doručení

Tři strategie opakování, až 10 pokusů

Vyberte si zásadu pro každé předplatné. Každý pokus je zaznamenán se stavovým kódem, tělem odpovědi a časováním.

linear

Lineární

Pevný růst: 30s, 60s, 90s, 120s, 150s…

none

Žádné

Fire-and-forget. Žádná opakování ani při chybách 5xx. Užitečné pro testovací hooky.

Úspěch HTTP 2xx ve vašem časovém oknu timeoutu
Maximální počet opakování 0–10 pokusů (výchozí 5)
Časový limit 1 000–30 000 ms na pokus (výchozí 10 000)
Protokol doručení Každý pokus uložen v webhook_deliveries pro audit
Správa API

9 koncových bodů pod /latest/webhooks/

Plné CRUD pro předplatná, protokoly doručení, jednorázová předplatná úloh a testovací koncový bod — vše OAuth2 Bearer, vše připraveno pro MCP.

POST /webhooks/subscribe Vytvořit nové předplatné (neomezeně na účet) po_webhooks_subscribe
GET /webhooks/list Vypsat všechna předplatná účtu po_webhooks_list
POST /webhooks/update Aktualizovat existující předplatné po_webhooks_update
POST /webhooks/delete Mazat předplatné soft-delete (protokol doručení zachován) po_webhooks_delete
GET /webhooks/deliveries Načíst protokol doručení s filtry (event_type, success_only) po_webhooks_deliveries
POST /webhooks/test Odeslat událost test.ping pro ověření doručení po_webhooks_test
POST /webhooks/subscribe-job Jednorázový webhook pro specifické job_id po_webhooks_subscribe_job
GET /webhooks/job-subscriptions Vypsat předplatná scopedovaná podle úloh po_webhooks_job_subscriptions
GET /webhooks/info Dostupné události, koncové body, zásady opakování, informace o podpisu po_webhooks_info
Bezpečnost pro podniky

Hardened by design (Zabezpečeno již návrhem)

HMAC-SHA256

Každá datová část podepsána vaším tajným klíčem. Porovnání s konstantním časem je povinné.

Ochrana proti SSRF

Soukromé/interní IP adresy, localhost a koncové body metadat cloudu blokovány při přihlášení i odeslání.

Bezpečné proti DNS rebindingu

IP znovu ověřena v čase odeslání, připnuta přes CURLOPT_RESOLVE.

HTTPS silně preferováno

http i https přijato. HTTPS doporučeno pro produkci.

Idempotence Event-ID

Každé doručení nese jedinečné X-PaperOffice-Event-ID. Deduplikujte na své straně.

Úplný auditní záznam

Všechny pokusy zaznamenány: stavový kód, tělo odpovědi, časování, chybová zpráva.

Limity

Neomezená předplatná, chování doručení plně konfigurovatelné

Předplatná / účet
Aktivní předplatná úloh
10 000 ms
Výchozí timeout
5
Výchozí max. počet opakování

Dostupné na všech plánech. Platba za použití: 1 kredit za úspěšné doručení (HTTP 2xx). Opakování, testovací události a neúspěšná doručení jsou zdarma.

Začněte nyní

Váš první webhook za 60 sekund

Vytvořte koncový bod, přihlaste se k odběru přes API, spusťte testovací událost. To je vše.

HMAC-SHA256 Exponenciální back-off Úplný auditní záznam