Gå til hovedindhold
Certyneo
Vejledninger — API & integrationer

API Signatur Elektronisk: Udvikler REST Guide 2026

Integrering af en API til elektronisk underskrift i din forretningsapplikation er aldrig været vigtigere. Denne udviklerguide dækker authentificering, webhooks og eIDAS-compliance fra A til Z.

Certyneo-team13 min. læsning

Opdateret den

Certyneo-team

Forfatter — Certyneo · Om Certyneo

Scrabble tiles spell out the word adequate.

Introduktion

Integrationen af en REST API til elektronisk signatur er blevet en uomgængelig forudsætning for udviklingsteams i 2026. Efterspørgslen efter robuste tekniske integrationer stiger i takt med digitaliseringen af kontraktlige processer. Uanset om du bygger en LegalTech SaaS-løsning, et ERP-system eller en HR-platform, er det afgørende for kvaliteten og den juridiske værdi af dine dokumentflows at forstå, hvordan man tilgår en API til elektronisk signatur — autentificering med OAuth2, håndtering af webhooks, eIDAS-overensstemmelse. Denne udviklerguide til REST tager dig trin for trin igennem det hele: arkitektur, autentificering, et dokuments livscyklus, webhooks i realtid og bedste praksis for sikkerhed.

---

Arkitektur for en REST API til Elektronisk Underskrift

RESTful-principper og endpoints-struktur

En veldesignet REST API til elektronisk underskrift bygger på klart identificerede ressourcer og semantiske HTTP-verber. Grundlæggende ressourcer er typisk:

  • `/documents` — upload, styring og hentning af PDF/DOCX-dokumenter
  • `/signature-requests` — oprettelse og styring af underskriftsanmodninger
  • `/signatories` — styring af underskrivere og deres identiteter
  • `/audit-trails` — hentning af certificerede revisionsklager
  • `/templates` — styring af genbrugelige dokumentskabeloner

Hver ressource udsætter standard CRUD-endpoints (`GET`, `POST`, `PUT`, `PATCH`, `DELETE`) og returnerer JSON-svar med normaliserede HTTP-koder: `200 OK`, `201 Created`, `400 Bad Request`, `401 Unauthorized`, `422 Unprocessable Entity`, `429 Too Many Requests`.

Et kritisk aspekt, der ofte bliver negligeret: pagination-styring. Modne APIs bruger cursor-based pattern i stedet for offset/limit, hvilket garanterer stabil ydeevne selv ved volumen af tusindvis af signerede dokumenter. Bekræft, at mål-API'et udsætter en header `X-Next-Cursor` eller et felt `next_page_token` i body'en.

API-versionering og bagudkompatibilitet

Versionering udgør et hovedpunkt for opmærksomhed for integratorer. De to dominerende tilgange i 2026 er:

  • Versionering efter URL: `https://api.certyneo.com/v2/signature-requests` — læseligt, cachebar af CDN'er, anbefalet til B2B API'er.
  • Versionering efter header: `Accept: application/vnd.certyneo.v2+json` — mere arkitektonisk rent, men mindre synligt.

Foretruk leverandører, der binder sig til en minimum depreciationspolitik på 12 måneder og som publicerer en offentlig changelog. En uanmeldt kompatibilitetsbrud i dit signaturflow kan få direkte juridiske konsekvenser (usignerede kontrakter, udebleven deadlines).

---

OAuth2-authentificering og API-opkalds sikkerhed

OAuth2: client_credentials flow vs authorization_code

Authentificering er hjørnestenen i enhver integration af API til elektronisk underskrift. De to mest relevante OAuth2-flowstyper for udvikler er:

Client Credentials Flow (M2M — Machine to Machine): ``` POST /oauth/token Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials &client_id=YOUR_CLIENT_ID &client_secret=YOUR_CLIENT_SECRET &scope=documents:write signature_requests:write audit_trails:read ``` Dette flow er idealt til server-til-server integrationer, hvor ingen slutbruger er involveret i authentificering (batchbehandling, kontraktautomation).

Authorization Code Flow + PKCE: anbefales, når din applikation handler på vegne af en identificeret slutbruger. PKCE (Proof Key for Code Exchange) er obligatorisk siden RFC 7636 og beskytter mod aflytningsangreb.

Væsentlige sikkerhedstips:

  • Gem `client_secret` i et vault (HashiCorp Vault, AWS Secrets Manager) — aldrig i uafklassificeret miljøvariabel
  • Implementer automatisk token-rotation med en buffer på 60 sekunder før udløb
  • Brug granulære scopes: anmod kun tilladelser, som er absolut nødvendige

API-nøgle-styring og rate limiting

For lette integrationer eller testmiljøer tilbyder nogle APIs statiske API-nøgler (Bearer Token). Hvis du bruger dem i produktion, anvend systematisk:

  • Kvartalsvis rotation af nøgler
  • Begrænsning efter IP (allowlist)
  • Overvågning af unormale opkald via din SIEM

Rate limiting er en uomgængelig virkelighed: signatur-API'er begrænser typisk mellem 100 og 1000 opkald/minut afhængig af plan. Implementer en eksponentiel retry-mekanisme med jitter: ``` retry_delay = base_delay * (2^attempt) + random_jitter ``` Overhold nøje header'en `Retry-After` returneret med `429 Too Many Requests`.

---

Livscyklus for en Underskriftsanmodning via API

Oprettelse og konfiguration af en underskriftsanmodning

Livscyklus for en underskriftsanmodning via REST API følger et tilstandsskema (`draft` → `pending` → `in_progress` → `completed` | `declined` | `expired`). Her er de tekniske trin i detaljer:

Trin 1 — Dokumentupload: ``` POST /v2/documents Content-Type: multipart/form-data

file=@contrat.pdf ``` Respons: `{ "document_id": "doc_a1b2c3", "checksum_sha256": "e3b0c442..." }`

Trin 2 — Oprettelse af anmodning: ```json POST /v2/signature-requests { "document_id": "doc_a1b2c3", "name": "Serviceaftale Q3 2026", "signatories": [ { "email": "signataire@client.fr", "first_name": "Marie", "last_name": "Dupont", "signature_level": "advanced", "fields": [{ "type": "signature", "page": 3, "x": 120, "y": 680 }] } ], "expiry_date": "2026-06-05T23:59:59Z", "reminder_settings": { "enabled": true, "frequency_days": 3 } } ```

Trin 3 — Aktivering: `POST /v2/signature-requests/req_x9y8z7/activate`

Fra aktiveringen forsvinder underskrivere deres invitationer, og anmodningen går i tilstand `in_progress`.

Hentning af undertegnet dokument og revisionslog

Når status `completed` er nået (detekterbar via webhook — se følgende afsnit), hent:

``` GET /v2/signature-requests/req_x9y8z7/document/signed → PDF signeret med indlejrede elektroniske underskrifter (PAdES-B-T ifølge ETSI EN 319 132)

GET /v2/signature-requests/req_x9y8z7/audit-trail → PDF over certificeret revisionslog (kvalificeret tidsangiv RFC 3161) ```

Gem altid begge filer sammen i din GED eller DMS. Revisionsloggen er beviskuld i tilfælde af juridisk indsigelse.

---

Webhooks: Realtidshændelser og fejlhåndtering

Konfiguration og sikring af webhooks

Webhooks transformerer din integration fra dyrt polling til en reaktiv begivenhedsarkitektur. Konfigurer dit webhook-endpoint:

``` POST /v2/webhooks { "url": "https://votre-app.com/hooks/certyneo", "events": [ "signature_request.completed", "signature_request.declined", "signatory.signed", "signature_request.expired" ], "secret": "whsec_votre_secret_hmac" } ```

Obligatorisk HMAC-sikring: valider hvert indgående payload ved at sammenligne den beregnede HMAC-SHA256-signatur med header `X-Certyneo-Signature`: ```python import hmac, hashlib

def verify_webhook(payload: bytes, secret: str, signature_header: str) -> bool: expected = hmac.new( secret.encode(), payload, hashlib.sha256 ).hexdigest() return hmac.compare_digest(f"sha256={expected}", signature_header) ``` Brug aldrig en klassisk strengsammenligning — sårbar for timing attacks.

Idempotence og genfremsendingstyring

Webhooks kan gensendes i tilfælde af timeout eller 5xx-fejl fra dit endpoint. Implementer idempotence obligatorisk:

  • Udtræk den unikke `event_id` fra hver webhook-payload
  • Kontroller i databasen, hvis denne `event_id` allerede er behandlet
  • Returner `200 OK` øjeblikkeligt (selv for dubletter) for at undgå uendelig genfremsendelser
  • Behandl business logic asynkront (queue: Redis, RabbitMQ, SQS)

Gylden regel: dit webhook-endpoint skal svare på mindre end 5 sekunder. Enhver tung forretningsproces (email-afsendelse, GED-arkivering, ERP-meddelelse) skal uddelegeres til en asynkron worker.

For at uddybe din forståelse af signaturinstrumentationsniveauer, der er tilgængelige via API, se vores komplette guide til elektronisk signatur, som detaljerer forskellene mellem simple, avancerede og kvalificerede signaturer.

---

Bedste praksis for integration og ydeevne

Sandbox-miljøer og teststrategi

Enhver seriøs API til elektronisk signatur tilbyder et isoleret sandbox-miljø fra produktion. Vedtag denne teststrategi:

  • Unit-tests: mock API-svar (Wiremock, MSW) for at validere din business logic uden at være afhængig af netværket
  • Integrationstests: eksekvere mod det virkelige sandbox for at validere det komplette livscyklus (oprettelse → signering → hentning)
  • Lasttests: simulere toppe af samtidige anmodninger for at identificere dine flaskehalse før produktionsudvikling
  • Kaostests: simulere timeouts og 5xx-fejl for at validere din retry-logik

Test aldrig i produktion med rigtige underskriveridentiteter. Elektroniske signaturer oprettet i sandbox har ingen juridisk værdi, hvilket er præcis hvad du ønsker til dine tests.

Overvågning, observabilitet og alarm

I produktion instrumentér din integration med:

  • Metrics: API-opkalds succesrate, latency p95/p99, fejlrate pr. endpoint
  • Distribuerede spor: spred `trace-id` i dine headers for at korrelere dine logs med API-leverandørens logs
  • Alarmer: udløs en alarm, hvis fejlrate overstiger 1 %, eller hvis latency p99 overstiger 3 sekunder

Se vores sammenligning af elektronisk signaturopløsninger for at evaluere tilgængelighedsSLA'er (uptime) tilbudt af forskellige leverandører — et kriterie, der ofte undervurderes ved API-integration.

Hvis du migrerer fra en anden platform, dækker vores guide om sådan migreres fra DocuSign eller YouSign til Certyneo tekniske aspekter ved API-migrering og kompatibilitet for eksisterende webhooks.

For at estimere investeringsafkastet for din integration, brug vores ROI-kalkulator for elektronisk signatur, der integrerer produktivitetsgevinster fra API-automatisering.

Endelig, hvis du vil gå længere med automatiseret dokumentgenerering til signering, udforsk vores AI-kontraktgenerator, som integreres naturligt med vores REST API.

Juridisk ramme gældende for elektronisk signatur-API

Integration af en API til elektronisk signatur begrænses ikke til en teknisk problemstilling: den forpligter direkte juridiske ansvar for redaktøren og dets klienter på flere grundtekster.

Forordning eIDAS nr. 910/2014 og eIDAS 2.0

Forordning (EU) nr. 910/2014 (eIDAS) etablerer det juridiske rammemiljø for elektronisk signatur i Den Europæiske Union. Den skelner tre niveauer:

  • Simpel elektronisk signatur (SES): minimal juridisk værdi, egnet til lav-risiko-dispositioner
  • Avanceret elektronisk signatur (AES): entydigt knyttet til underskriveren, oprettet fra data under dennes eksklusive kontrol — artikel 26 eIDAS
  • Kvalificeret elektronisk signatur (QES): ligestilles med en håndskrevet signatur i hele EU — artikel 25 stk. 2 eIDAS

Med gradvis ikrafttræden af forordning eIDAS 2.0 (EU-forordning 2024/1183) skal udvikler forvente integration af europæiske digitale identitetslommebøger (EUDIW) i deres authentificeringsflowteknik. Se vores eIDAS 2.0-guide for detaljerede tekniske implikationer.

Fransk civillov — Artikler 1366 og 1367

I fransk ret fastslår artikel 1366 i civilloven, at "elektronisk skrift har samme bevisværdi som skrift på papirmedie, med forbehold om, at den person, hvorfra den stammer, kan identificeres behørigt, og at den etableres og opbevares under betingelser, der kan garantere dens integritet".

Artikel 1367 præciserer betingelserne for pålidelig elektronisk signatur: identifikation af underskriveren og dokumentintegritet-garanti. Disse krav oversætter teknisk til forpligtelsen til at bevare certificerede revisionsklager og identitetsbevis brugt under signering — elementer, som din API skal udsætte, og som du skal opbevare.

ETSI EN 319 132-normer — PAdES

Det obligatoriske tekniske format for PDF-signaturer, der er i overensstemmelse med eIDAS, er PAdES (PDF Advanced Electronic Signatures), defineret af ETSI EN 319 132-standard. Din API skal som minimum fremstille PAdES-B-T-signaturer (med tidsstempel), og PAdES-B-LT eller PAdES-B-LTA for at garantere langtidsvalidabilitet (arkivering 10+ år).

GDPR nr. 2016/679 — Data for underskrivere

Personoplysninger indsamlet under signaturprocessen (navn, fornavn, email, IP-adresse, identitetsdata til AES/QES) udgør personoplysninger underlagt GDPR. Dine forpligtelser som ansvarlig eller databehandler omfatter:

  • At definere en opbevaringsperiode berettiget (typisk på linje med forældelsesfrister: 5 år under almindelig ret)
  • At forudse en mekanisme for automatisk rydning via API (`DELETE /v2/signature-requests/{id}/personal-data`)
  • At dokumentere behandlingen i dit register for behandlingsaktiviteter (artikel 30 GDPR)
  • At afslutte en DPA (Data Processing Agreement) med din elektronisk signatur-API-leverandør

NIS2-direktiv og serviceydelseskontinuitet

For softwareredaktører klassificeret som væsentlige eller vigtige enheder under NIS2-direktivet (2022/2555) skaber integration af en tredje-parts API en afhængighed, som skal dokumenteres i din analyse af risici for digital forsyningskæde. Kræv fra din API-leverandør SOC 2 Type II-certificering og en tilgængelighedsSLA ≥ 99,9 %.

Illustrative brugsscenarier: API til Elektronisk Signatur

Situation 1 — Automatisering af leverandørkontrakter i en industri-SMV

Disse scenarier er illustrative: de beskriver typiske situationer og rapporterer ingen målte resultater hos en kunde. En industriel SMV, der håndterer omkring 200 leverandørkontrakter om året, ønsker at eliminere papirgange frem og tilbage samt manuelle rykkere, der optager en del af en administrativ assistents tid. Udviklingsteamet integrerer signatur-API'et (REST) direkte i virksomhedens ERP-system via følgende flow:

  • Ved validering af en indkøbsordre i ERP'en udløses automatisk et opkald `POST /v2/signature-requests`
  • Den genererede PDF-kontrakt uploades, og en underskriftsanmodning sendes til den refererede leverandørkontakt
  • En webhook `signatory.signed` opdaterer indkøbsordrens status i realtid
  • Det undertegnede dokument og revisionsloggen arkiveres automatisk i DMS via et andet API-opkald

Forventede fordele ved en sådan integration: kortere signeringstid, mindre administrativ tid brugt på rykkere og en begrænset risiko for bortkomne dokumenter. Omfanget af gevinsten måles på det faktiske omfang, før og efter et pilotprojekt.

Situation 2 — LegalTech-platform for advokatfirmaer

En software-redaktør, der udvikler en SaaS-løsning rettet mod advokatfirmaer af 5 til 30 samarbejdspartnere, integrerede elektronisk signatur-API for at give sine slutbrugere mulighed for at få mandater, honorarkonventioner og sagsaktionærer signeret direkte fra firmainterfacen.

Den valgte tekniske arkitektur bruger OAuth2 Authorization Code + PKCE-flowet, så hver advokat autenticerer anmodninger på sit eget navn. Webhooks `signature_request.completed` udløser automatisk lagring af det undertegnede dokument i klientens mappe i juridisk DMS.

Udbyderen fremhæver tilgængeligheden af avancerede elektroniske signaturer (AES) via API, et niveau der passer til honoraraftaler. Udviklingstiden for den indledende integration afhænger af teamets modenhed og den eksisterende arkitektur; den opgøres på det faktiske omfang, før og efter et pilotprojekt.

Situation 3 — Digital onboarding i en gruppe af private klinikker

En gruppe private klinikker på omkring 600 senge skulle demateriaisere informeret samtykkesedler og indlæggelseskontrakter, der hidtil blev udskrevet og manuelt signeret ved tilførslen — hvilket genererede omkostninger ved print estimeret til flere tusinde euro årligt og ventetider ved modtagelse.

API-integrationen forbandt hospitalsoplysningssystemet (SIH) med elektronisk signatur-platformen. Ved patientregistrering kalder SIH'en API'en for at skabe en multipart-underskriftsanmodning (patient + riferingslæge) med automatisk positionering af underskriftsfelter beregnet ud fra skabelonmetadata.

GDPR-overholdelse kræver indførelse af en automatisk, planlagt sletning via API (`PATCH /v2/signature-requests` + webhook til bekræftelse af sletning) tilpasset de lovbestemte opbevaringsfrister for medicinske journaler (20 år for myndige, jf. article R. 1112-7 du Code de la santé publique). Hvad angår fordele, bør ventetiden ved indlæggelse samt udgifterne til print og scanning falde; omfanget heraf måles på det faktiske omfang, før og efter et pilotprojekt.

Ofte stillede spørgsmål

Hvad er forskellen mellem simpel, avanceret og kvalificeret elektronisk signatur i en API-integration?

eIDAS-forordningen skelner mellem tre niveauer af signatur. Simpel signatur bygger udelukkende på en e-mailadresse; avanceret signatur kræver strengere identifikation af underskriver og dokumentintegritet garanteret gennem kryptering. Kvalificeret signatur, det højeste niveau, kræver et certifikat udstedt af en kvalificeret tillidsudbyder. I en API-kontekst betyder det konkret, at parameteren `signature_level` sendes i hver anmodning og bestemmer, hvilke identifikationskontrroller der udløses på serveren.

Hvad er den juridiske værdi af et dokument signeret via en REST-API efter fransk ret?

Efter fransk ret anerkender artikel 1366 i den franske civillov elektronisk signatur som svarende til håndskrevet signatur, forudsat at den muliggør identifikation af underskriveren og garanterer dokumentets integritet. Certificeret tidsstempel og revisionsspor udgør de vigtigste beviser i tilfælde af tvist. En API-integration, der korrekt arkiverer revisionslogge, SHA-256-fingeraftryk og samtykkemetadata, opfylder disse krav, uanset hvilket sprog eller rammeværk der anvendes.

Hvordan sikrer man webhooks modtaget fra en elektronisk signatur-API for at undgå forfalskede anmodninger?

Webhooks sendt fra en signatur-API skal verificeres før enhver behandling. Standardpraksis består i at sammenligne en HMAC-SHA256-signatur inkluderet i et dedikeret header (ofte `X-Webhook-Signature`) med hashen genberegnet på serversiden ud fra anmodningens råtekst og en delt hemmelighed. Man skal også verificere et tidsstempel indlejret i payloaden for at afvise gentagne anmodninger efter en acceptabel grænse, typisk fem minutter.

Overholder signerernes persondata, som passerer gennem en signatur-API, GDPR?

GDPR gælder, så snart persondata — navn, e-mailadresse, IP-adresse — behandles. Som udvikler handler du som databehandler i henhold til artikel 28 i GDPR; API-udbyderen gør det også. Det er afgørende at bekræfte, at data lagres i Det Europæiske Økonomiske Sammenslutningsområde eller er dækket af passende garantier, at opbevaringsperioden er fastsat kontraktligt, og at din DPA (databehandleraftale) med udbyderen er underskrevet før produktion.

Hvordan håndterer man udløbet af en signaturanmodning uden at blokere applikationens forretningsflow?

Når en anmodning når `expiry_date`, skifter dens status til `expired`, og ingen yderligere signaturer accepteres. For at undgå forretningsblokering anbefales det at lytte til webhook-hændelsen `signature_request.expired` og automatisk udløse en genopfølgningslogik: oprettelse af en ny anmodning med et nyt dokument eller forlængelse, hvis API'en tillader det via et `PATCH`-endpoint. Proaktiv overvågning af udløbsfrister i dit overvågningssystem reducerer kontraktmæssige afbrydelser.

Konklusion

Integrering af en REST API til elektronisk signatur i 2026 kræver samtidig beherskelse af flere dimensioner: robust RESTful-arkitektur, sikker OAuth2-authentificering, begivenhedsstyring via webhooks og overholdelse af eIDAS- og GDPR-krav. Udvikler, som forventer disse bekymringer fra design af deres integration, sparer sig selv kostbare omarbejdelser og større juridiske risici.

De tre søjler at huske: sikre dine API-opkald (OAuth2 + minimale scopes + vault), behandl begivenheder asynkront og idempotent via webhooks, og arkiver systematisk det undertegnede dokument med dets certificerede revisionslog.

Certyneo stiller en dokumenteret REST API til rådighed, i overensstemmelse med eIDAS, med gratis sandbox og dedikeret udvikler-teknisk support. Opret din Certyneo-konto for at få adgang til din sandbox API-nøgle og start din integration i dag.

Prøv Certyneo gratis

Send din første signaturkonvolut på mindre end 5 minutter. 5 konvolutter i 14 dage, derefter 2/måned, uden betalingskort.

Gå dybere ned i emnet

Vores komprehensive guider til at mestre elektronisk underskrift.

Certyneo-fællesskab

Et spørgsmål om elektronisk signatur?

Tilslut dig Certyneo-fællesskabet: stil dine spørgsmål, del dine svar og kommuniker med tusinder af brugere og vores team.