Nettstedskart Oppdateringer
Norsk
NOK kr
Oppdateringer
NYTT
Claude & ChatGPT — Supercharged.
Alle dokumenter · 409+ AI-verktøy · 30 sek oppsett
Claude· ChatGPT· Cursor· Gemini· +50
Koble til nå
Plattform
50+ AI-moduler og verktøy
Løsninger
Bransjer, prosesser, risikoer
Utvikler
API, SDK-er, dokumentasjon
Ressurser
Veiledninger, blogg, støtte
Selskap
Team, partnere, karrierer
Priser
Webhooks

Webhooks Sanntidshendelser

Motta sanntidsvarsler for alle hendelser. Dokumenter behandlet, OCR fullført, klassifisering utført.

20+
Hendelsestyper
<1s
Latens
100%
Pålitelig
POST /din-endepunkt
Forespørselshoder
X-PaperOffice-Event: document.processed
X-PaperOffice-Event-ID: a3b7f9c1d4e8b2a6
X-PaperOffice-Signature: sha256=9f8a2c…
JSON-brødtekst
{
  "event_type": "document.processed",
  "event_id": "a3b7f9c1d4e8b2a6",
  "timestamp": "2026-04-17T14:23:11Z",
  "subscription_id": 42,
  "data": { "pofid": "doc_01HZY8K3…" }
}
Signatur verifisert HMAC-SHA256 · Hendelses-ID loggført

Betrodd av ledende selskaper over hele verden

Tilgjengelige hendelser

22 hendelsestyper, gruppert etter entitet

Abonner på enkelte hendelser eller bruk jokertegnet * for alt.

Dokumenter

14
  • dokument.lastet_opp Nytt dokument lastet opp til et arbeidsområde
  • dokument.opprettet Alias for document.uploaded (kompatibilitet)
  • dokument.behandlet OCR/AI-IDP-pipeline fullført vellykket
  • dokument.redigert Metadata, tagger eller innhold oppdatert
  • dokument.slettet Dokument flyttet til papirkurv
  • dokument.gjenopprettet Dokument gjenopprettet fra papirkurv
  • dokument.flyttet Dokument flyttet mellom arbeidsområder
  • dokument.versjon_opprettet Ny versjon lagt til et eksisterende dokument
  • dokument.livssyklus_endret Status for oppbevaring/arkivering endret
  • dokument.kommentar_lagt_til Kommentar postert på et dokument
  • dokument.notat_lagt_til Internt notat vedlagt
  • dokument.tagg_lagt_til Tag tildelt et dokument
  • dokument.juridisk_sikring_aktivert Juridisk sperre aktivert (uendelig)
  • dokument.juridisk_sikring_deaktivert Juridisk sperre opphevet

Jobber

3
  • jobb.fullført Asynkron jobb fullført vellykket
  • jobb.mislyktes Asynkron jobb feilet terminalt
  • jobb.framdrift Fremdriftsoppdatering under langvarige jobber

Workspaces

2
  • arbeidsområde.delt Workspace delt med en bruker eller et team
  • arbeidsområde.ikke_delt Tilgang til Workspace opphevet

Oppgaver

3
  • oppgave.opprettet Ny oppgave opprettet
  • oppgave.fullført Oppgave merket som fullført
  • oppgave.forfalt Oppgave har passert forfallsdato
Nyttelast og hodere

Hver levering følger samme skjema

Forutsigbar JSON-brødtekst, fem signerte HTTP-hodere, ISO-8601 UTC-tidsstempler.

Forespørselsbrødtekst (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
    }
  }
}
HTTP-forespørselshoder
Content-Type application/json Alltid JSON, UTF-8-kodet
User-Agent PaperOffice-Webhook/1.0 Fast identifikator for brannmur-allowlist
X-PaperOffice-Event dokument.behandlet Hendelsestype som leveres
X-PaperOffice-Hendelses-ID a3b7f9c1… 128-biters unik ID. Bruk for idempotens.
X-PaperOffice-Abonnements-ID 42 ID for abonnementet som mottar hendelsen
X-PaperOffice-Signatur sha256=… HMAC-SHA256 av rå brødtekst, heksadesimal-kodet
Signaturverifisering

Verifiser hver levering med HMAC-SHA256

Beregn HMAC-SHA256 over den rå forespørselsbrødteksten ved hjelp av din delte hemmelighet, og sammenlign deretter mot X-PaperOffice-Signature ved bruk av tidskonstant sammenligning (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');
});
Gjenforsøk og levering

Tre gjenforsøksstrategier, opptil 10 forsøk

Velg en policy per abonnement. Hvert forsøk loggføres med statuskode, svarbrødtekst og timing.

linear

Lineær

Fast vekst: 30s, 60s, 90s, 120s, 150s…

none

Ingen

Fire-og-glem. Ingen gjenforsøk selv ved 5xx. Nyttig for test-hooks.

Suksess HTTP 2xx innenfor ditt tidsvindu
Maks gjenforsøk 0–10 forsøk (standard 5)
Tidsavbrudd 1 000–30 000 ms per forsøk (standard 10 000)
Leveringslogg Hvert forsøk lagret i webhook_deliveries for revisjon
Administrasjons-API

9 endepunkter under /latest/webhooks/

Full CRUD for abonnementer, leveringslogger, engangsjobb-abonnementer og et testendepunkt — alt OAuth2 Bearer, alt MCP-klart.

POST /webhooks/abonner Opprett et nytt abonnement (ubegrenset per konto) po_webhooks_subscribe
GET /webhooks/liste List opp alle abonnementer på kontoen po_webhooks_list
POST /webhooks/oppdater Oppdater et eksisterende abonnement po_webhooks_update
POST /webhooks/slett Slett et abonnement mykt (leveringslogg bevart) po_webhooks_delete
GET /webhooks/leveranser Hent leveringslogg med filtre (event_type, success_only) po_webhooks_deliveries
POST /webhooks/test Send en test.ping-hendelse for å verifisere levering po_webhooks_test
POST /webhooks/abonner-jobb Engangs-webhook for en spesifikk job_id po_webhooks_subscribe_job
GET /webhooks/jobb-abonnementer List opp jobb-spesifikke abonnementer po_webhooks_job_subscriptions
GET /webhooks/info Tilgjengelige hendelser, endepunkter, gjenforsøkspolicyer, signaturinfo po_webhooks_info
Enterprise sikkerhet

Herdet etter design

HMAC-SHA256

Hver nyttelast signert med din hemmelighet. Tidskonstant sammenligning er obligatorisk.

SSRF-beskyttelse

Private / interne IP-er, localhost og sky-metadata-endepunkter blokkert ved abonnement og utsending.

Trygg mot DNS-rebinding

IP re-valideres ved utsendingstidspunkt, festet via CURLOPT_RESOLVE.

HTTPS sterkt foretrukket

http og https aksepteres. HTTPS anbefales for produksjon.

Event-ID idempotens

Hver levering bærer en unik X-PaperOffice-Event-ID. Dedupliser på din side.

Full revisjonsspor

Alle forsøk loggført: statuskode, svarbrødtekst, timing, feilmelding.

Grenser

Ubegrensede abonnementer, leveringsatferd fullt konfigurerbar

Abonnementer / konto
Aktive jobb-abonnementer
10 000 ms
Standard tidsavbrudd
5
Standard maks gjenforsøk

Tilgjengelig på alle planer. Betaling per bruk: 1 kreditt per vellykket levering (HTTP 2xx). Gjenforsøk, testhendelser og mislykkede leveringer er gratis.

Start nå

Motta hendelser?

Konfigurer dine webhooks.

HMAC-SHA256 Eksponentiell back-off Full revisjonsspor