Eine saubere, typisierte, dokumentierte API.
REST + JSON, URL-versioniert, scope-gated, cursor-paginiert. SDKs für Node, Python, React und Embed. Signierte Webhooks, generiertes OpenAPI 3.1, einsatzbereite Code-Generatoren.
Ihre erste Sitzung in 5 Minuten.
# 1. Eine Inspektionssitzung erstellen
curl -X POST https://api.nexbasira.com/v1/sessions \
-H "Authorization: Bearer nbx_live_sk_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"type": "field_inspection",
"reference": "INS-42871",
"participant": {
"name": "Marie L.",
"channel": "sms",
"phone": "+33612345678"
},
"callbacks": {
"session.completed": "https://your-app.com/webhooks/nbx"
}
}'
# Antwort 201 — die Sitzung wurde erstellt, der SMS-Link ist unterwegs
{
"id": "sess_42871",
"status": "pending",
"join_url": "https://join.nexbasira.com/s/abc123def...",
"expires_at": "2026-05-26T14:00:00Z"
}import Nexbasira from '@nexbasira/node';
const nbx = new Nexbasira({ apiKey: process.env.NBX_KEY });
const session = await nbx.sessions.create({
type: 'field_inspection',
reference: 'INS-42871',
participant: {
name: 'Marie L.',
channel: 'sms',
phone: '+33612345678',
},
callbacks: {
'session.completed': 'https://your-app.com/webhooks/nbx',
},
});
console.log(session.join_url);
// → https://join.nexbasira.com/s/abc123def...
// Über die letzten Sitzungen iterieren (async iterator)
for await (const s of nbx.sessions.list({ status: 'completed' })) {
console.log(s.id, s.completed_at);
}from nexbasira import Nexbasira
nbx = Nexbasira(api_key=os.environ["NBX_KEY"])
session = nbx.sessions.create(
type="field_inspection",
reference="INS-42871",
participant={
"name": "Marie L.",
"channel": "sms",
"phone": "+33612345678",
},
callbacks={
"session.completed": "https://your-app.com/webhooks/nbx",
},
)
print(session.join_url)
# → https://join.nexbasira.com/s/abc123def...
# Die Beweisakte nach der Signatur abrufen
evidence = nbx.evidence.retrieve(session_id=session.id)
print(evidence.pdf_url, evidence.audit_chain_hash)import { NexbasiraEmbed } from '@nexbasira/react';
export function InspectionView({ sessionId }) {
return (
<NexbasiraEmbed
sessionId={sessionId}
onCapture={(evt) => trackPhoto(evt)}
onSigned={(evt) => redirect(evt.evidence_url)}
theme="dark"
brand={{ logo: "/logo.svg", accent: "#00E5A0" }}
/>
);
}
// Das Embed übernimmt WebRTC, GPS-Erfassung, eIDAS-Signatur.
// Sie gestalten die UI drumherum. White-Label standardmäßig.Alles steuerbar über die API.
/sessions
Eine Inspektionssitzung erstellen, auflisten, abrufen und beenden. SMS-/E-Mail-Einladungen.
/evidence
Beweise einer Sitzung auflisten, signiertes PDF herunterladen, Blockchain-Hash abrufen.
/whiteboards
Annotationen als SVG / PNG pro Sitzung abrufen. Zeitgestempelter Export.
/webhooks
Endpoint registrieren, Secret rotieren, Test-Fire. HMAC-SHA256-Signatur.
/branding
Logo, Farben und Domain für den White-Label-Modus anpassen.
/org
Organisations-Metadaten, Kontingente, Mitglieder und RBAC-Rollen auslesen.
Webhooks, HMAC-SHA256-signiert.
Stripe-Style-Format mit 5-Minuten-Clock-Skew-Toleranz. Secret verschlüsselt gespeichert. Exponentielle Wiederholungen mit Backoff bis zu 24 Std.
# Von Nexbasira gesendeter Header
Nbx-Signature: t=1714060800,v1=5257a869e7ec...
# Verifizierung (Node.js)
import { verifyWebhook } from '@nexbasira/node';
app.post('/webhooks/nbx', (req, res) => {
const event = verifyWebhook(
req.rawBody,
req.headers['nbx-signature'],
process.env.NBX_WEBHOOK_SECRET
);
if (event.type === 'session.completed') {
downloadEvidence(event.data.id);
}
res.json({ ok: true });
});
4 typisierte, gepflegte SDKs.
npm install @nexbasira/node
- Aus OpenAPI generierte Typen
- Async-Iterator-Pagination
- Integrierte Webhook-Verifizierung
pip install nexbasira
- Pydantic-v2-Modelle
- Async- + Sync-Modus
- Typisierte Fehler nach Code
npm install @nexbasira/react
- Schlüsselfertige <Embed/>-Komponente
- Hooks useSession, useEvidence
- Tailwind-kompatibles Theming
<script src="cdn.nbx.com/embed.js"></script>
- Kein Framework, <30 KB
- Europaweit verteiltes CDN
- Mit allen Frameworks kompatibel
Verbinden Sie Nexbasira mit Ihrem Stack.
OIDC + SAML 2.0 SSO
Just-in-Time-Provisioning mit Domain-Allowlist und Standardrolle.
SCIM 2.0
Automatisches Provisioning von Benutzern und Gruppen. Bearer-Token pro Organisation.
Webhooks & Verifizierung
HMAC-Verifizierungs-Helfer in allen SDKs. Exponentielle Wiederholungen.
Self-Hosting
Dokumentierter Docker-+-Caddy-Stack. Verfügbar im Enterprise-Plan.
Idempotenz
Idempotency-Key-Header bei allen POSTs. Keine Duplikate, niemals.
Rate-Limits
X-RateLimit-*-Header bei jeder Antwort. Kontingente pro Schlüssel und pro Org.
Generiertes, öffentliches, versioniertes Schema.
Laden Sie das gefilterte OpenAPI-3.1-Schema herunter (nur öffentliche Operationen) und generieren Sie Ihre Typen automatisch.
# TypeScript-Typen
npx openapi-typescript \
https://api.nexbasira.com/v1/openapi.json \
-o src/nbx-types.ts
# Pydantic-Modelle
datamodel-codegen \
--url https://api.nexbasira.com/v1/openapi.json \
--output-model-type pydantic_v2.BaseModel \
--output nbx_models.py
Durch SemVer-URL garantierte Stabilität
Breaking Changes leben unter einem neuen Präfix (/v2/) mit mindestens 12 Monaten Überlappung, bevor die vorherige Version eingestellt wird. Additive Änderungen (neue optionale Felder, neue Endpoints, neue Event-Typen) werden direkt ausgerollt. Unsere SDKs behandeln unbekannte Felder als vorwärtskompatibel.
Bereit, Nexbasira zu integrieren?
Erhalten Sie Ihren Sandbox-API-Schlüssel in 30 Sekunden, ohne Kreditkarte.