API och webhooks

Koppla ditt eget system till DocuTract: skapa en token för API:t och låt oss meddela din adress när ett dokument är klart eller något behöver uppmärksamhet.

Var du hittar det

Om dokumenten på ditt kontor börjar någon annanstans än i DocuTract kan det systemet prata med oss direkt. Öppna menyn med din adress i det övre högra hörnet och välj Integrationer: där skapas en token som ditt system anropar oss med, och där lägger du till adressen som vi meddelar om färdiga dokument.

Skärmen börjar med färdiga CRM-kopplingar (CRM-integrationer); de tokens och webhooks som beskrivs här finns nedanför, i delen API och webhooks.

Skärmen Integrationer: API-tokens och webhook-adresser

Token

Tryck på Skapa en token, ge den ett namn som du känner igen senare (så att du vet vilket system som använder den) och kryssa i vad den får göra: läsa mallar, skapa dokument, arbeta med ärenden.

Själva token visas en gång, direkt när den har skapats: vi sparar bara en hash av den, så att visa den en andra gång är något som inte ens vi kan göra. Kopiera den direkt in i ditt systems inställningar.

Listan visar de första tecknen i varje token, vad den får göra och när den senast användes. Återkalla stänger av en token direkt; posten finns kvar, så det syns att den har funnits och när den slutade fungera.

Vad API:t kan göra

Ditt system kan:

  • öppna ett ärende och ladda upp skanningar till det;
  • skapa ett dokument från en mall med värdena redan ifyllda;
  • fråga vilket steg ett dokument har nått;
  • hämta alla värden tillsammans med skanningen som vart och ett lästes från;
  • få en kortlivad länk till den färdiga filen.

Den fullständiga beskrivningen av varje adress och fält genereras från själva koden och publiceras öppet: API-beskrivningen.

Webhooks

I stället för att fråga oss om ett dokument är klart, ge oss en adress så skriver vi till dig. Lägg till den under Webhooks och kryssa i händelserna: dokument klart, dokument misslyckades, ärende klart, en avvikelse hittad, en kund skickade en fil.

Varje förfrågan signeras med huvudet X-DocuTract-Signature, och hemligheten som verifierar signaturen visas en gång, precis som token. Ditt system måste kontrollera signaturen och svara med en 2xx-kod. Om det svarar något annat, eller inte svarar alls, försöker vi igen: efter en minut, efter fem, efter en halvtimme, efter två timmar och efter tio, och sedan slutar vi.

När något inte kom fram

Knappen Leveranser visar loggen: vilken händelse vi skickade, när, hur många gånger, vilken svarskod som kom tillbaka och början av svarets innehåll. Det är svaret på ”vårt system tog inte emot något”: där står det svart på vitt att det svarade 500 fyra gånger klockan 14.12.

Leveransloggen för en webhook-adress: händelser, försök och svarskoder

Skicka test skickar en ping till adressen direkt, utan att vänta på en riktig händelse, så att en mottagare kan sättas upp innan något arbete går igenom den. Försök igen, bredvid en misslyckad leverans, gör ytterligare ett försök direkt.

Zapier, Make och n8n

No-code-plattformar (tjänster där man bygger en integration utan att programmera) prenumererar själva på våra händelser via REST hooks-delen av API:et, så ingen behöver kopiera in deras adresser i DocuTract. Ge plattformen en token med behörigheterna webhooks:read och webhooks:write, plus de behörigheter dess åtgärder behöver (till exempel templates:read och documents:write).

  • POST /api/v1/hooks med {"event": "document.ready", "target_url": "https://…"} prenumererar en adress på en händelse. Svaret innehåller prenumerationens id och, en gång, dess secret för signaturen.
  • GET /api/v1/hooks listar de prenumerationer som skapats så; DELETE /api/v1/hooks/{id} tar bort en.
  • GET /api/v1/hooks/events listar händelserna: document.ready, document.failed, case.ready, finding.raised, intake.uploaded.
  • GET /api/v1/hooks/samples/{event} returnerar ett exempel på innehållet, som plattformen visar i sin ”testutlösare” innan någon riktig händelse har inträffat.

En prenumeration är en vanlig webhook-adress: signerad, upprepad och loggad på samma sätt och synlig i listan under Webhooks. Den upphör när den token som skapade den återkallas eller går ut, eller när plattformen svarar på en leverans med 410 Gone.

Så här ser document.ready ut:

{
  "document_id": "00000000-0000-4000-8000-000000000001",
  "reference": "DOC-26-0001",
  "template_id": "00000000-0000-4000-8000-000000000002",
  "template_version": 1,
  "event": "document.ready",
  "occurred_at": "2026-01-15T10:30:00+00:00"
}

och så här case.ready:

{
  "case_id": "00000000-0000-4000-8000-000000000003",
  "title": "Sample case",
  "documents": [
    { "id": "00000000-0000-4000-8000-000000000001", "reference": "DOC-26-0001" }
  ],
  "event": "case.ready",
  "occurred_at": "2026-01-15T10:30:00+00:00"
}

En malls fält

GET /api/v1/templates/{id}/fields (behörighet templates:read) listar vad en mall behöver: varje fälts key (som values i POST /api/v1/documents anges efter), dess label, varifrån det fylls i och fillable, som är false för ett fält DocuTract fyller i själv, till exempel ett datum. Ett formulär i Zapier eller Make byggs från den här listan och stämmer därför alltid med mallen som den ser ut nu.

Uppslag

Några anrop finns för att ett system, eller en no-code-plattform, ska hitta det det behöver utan att gissa:

  • GET /api/v1/me (ingen behörighet) returnerar arbetsytan som token hör till, dess abonnemang samt tokens eget namn och behörigheter. Det är det enklaste sättet att kontrollera att en token fungerar.
  • GET /api/v1/documents (behörighet documents:read) listar de senaste dokumenten först. Begränsa med reference (den exakta DOC-…-referensen), status eller template_id; limit tar upp till 100, standard är 25.
  • GET /api/v1/cases (behörighet cases:read) listar de senaste ärendena, om du vill bara de med en viss status, med samma limit. Varje ärende har nu också sitt created_at.
  • GET /api/v1/case-types (behörighet cases:read) listar de ärendetyper som ett ärende kan öppnas från.
  • GET /api/v1/templates?name=… behåller bara de mallar vars namn innehåller texten, oavsett versaler och gemener.

Det finns medvetet ingen sidindelning: listorna är till för att hitta det senaste, inte för att exportera en hel arbetsyta.

Vilken plan

API och webhooks ingår i Team-planen. I alla andra planer förblir de tokens och adresser som du redan har skapat synliga och kan återkallas, men nya utfärdas inte, och anrop som görs med en token betjänas inte längre. Jämför planer på prissidan.