LIVE · AUDIT-KÆDE · EU-HOSTET
SYSTEM · 99,99 % OPPETID
v 1.0 ↗ FREMSTILLET I EU
Integration

Offentligt API + SDK'er + embed-widget

Fire førsteparts-SDK'er over et versioneret REST-API. Cursor-paginering, Idempotency-Key-headers, HMAC-webhook-signering, async-iterator-hjælpere, typed errors. De developer experience-brikker, der bør være der — ikke eftertanker.

De fire SDK'er

Node

@nexbasira/node

Server-side. Typet mod OpenAPI-skemaet; async iterators til paginerede lister; constructEvent(body, sig, secret) til webhook-verifikation. Nul runtime-afhængigheder ud over global fetch.

Læs Node-guiden →
Python

nexbasira (PyPI)

Server-side. Pydantic v2-modeller genereret ud fra skemaet. Sync- + async-klienter deler samme flade; webhook-verifikation ligger i WebhookSigner.verify(body, sig, secret).

Læs Python-guiden →
React

@nexbasira/react

Hooks + komponenter til operatørfladen. <CertivisioSessionView /> renderer brugergrænsefladen i sessionen med branding, beviser og chat. Sæt den ind i din eksisterende React-app — ingen portal-redirect.

Læs React-guiden →
Embed

Iframe-widget

<script src=".../nb-embed.js"> + en div — integrationen med mindst friktion. Til driftsteams, der kører operatør-UI'en fra en non-React-stak. Branding arves fra den indlejrende side via postMessage.

Læs Embed-guiden →

Bygget på OpenAPI-specifikationen

Node- + Python-SDK'erne genereres ud fra det samme filtrerede OpenAPI 3.1-skema, vi udgiver på app.nexbasira.com/api/public-schema/ — så hvis du vil springe SDK'en over og generere din egen typede klient i Go eller Rust, kan du:

# Node typed client
npx openapi-typescript https://app.nexbasira.com/api/public-schema/ -o src/nb-types.ts

# Python typed models
datamodel-codegen \
  --url https://app.nexbasira.com/api/public-schema/ \
  --input-file-type openapi \
  --output-model-type pydantic_v2.BaseModel \
  --output cvp_models.py

Den håndskrevne ergonomiske flade (typed errors, async iterators, webhook-verifikation) lægges oven på de genererede typer. Du vælger ikke mellem "hurtig typet klient" og "god DX" — begge følger med.

REST-konventioner, gjort kedelige med vilje

KonventionHvorfor
Cursor-pagineringStabil under samtidige skrivninger. next_cursor i svaret; send den tilbage som ?cursor=….
Idempotency-Key-headerSend en UUID; prøv igen ved timeout; serveren returnerer det oprindelige svar uanset hvad.
HMAC-SHA256-webhooksNB-Signature: t=…,v1=…. SDK'erne leverer en one-liner-verifikation; 5-min replay-vindue.
Versioneret URL-præfiks/api/v1/public/. Breaking changes flytter til /v2/ med 12 måneders overlap.
Scope-gatede credentialsHver credential bærer eksplicitte scopes (sessions:write, evidence:read, …). Rotér uden at miste en tenant.
Typet fejlkonvolutSamme form på hvert endpoint. code, detail, retry_after_seconds når relevant.

Stabilitetsløfte

Additive ændringer — nye valgfri felter, nye endpoints, nye webhook-event-typer — leveres på plads; SDK'erne behandler ukendte felter som fremadkompatible. Breaking changes flytter til et nyt URL-præfiks og overlapper med den forrige version i mindst 12 måneder. Du vågner ikke op til en green-to-red-migrering en tirsdag morgen.

Start med hurtig start-guiden

Opret en session, præg en felt-invitation, verificér en webhook — på under 5 minutter. Copy-paste curl + Node + Python på samme side.