docs: cross-links updated to 3-level structure

This commit is contained in:
Stefan Schmidt-Egermann 2026-04-25 12:03:59 +02:00
parent 21d1516b8b
commit 4c1e8a235b
Signed by: SSE
GPG key ID: DE0FCB225FF13A91
3 changed files with 216 additions and 2 deletions

39
CONTRIBUTING.md Normal file
View file

@ -0,0 +1,39 @@
# Contributing
Vielen Dank für dein Interesse an der hightrusted CAPTURE API.
## Wer kann beitragen
Diese Repositorys werden primär von hightrusted GmbH gepflegt. Wir freuen uns
über Bug-Reports, Verbesserungsvorschläge und Pull-Requests aus der Community.
## Issues
- **Bug-Report:** beschreibe das erwartete vs. tatsächliche Verhalten und liefere
einen reproduzierbaren Code-Schnipsel mit. Bitte keine API-Keys mit posten.
- **Feature-Request:** beschreibe den Use-Case — wir entscheiden, ob das Feature
in das SDK gehört oder besser direkt gegen die API umgesetzt wird.
## Pull Requests
1. Fork und Branch (`feat/...`, `fix/...`, `docs/...`).
2. Tests anpassen oder ergänzen.
3. Lokale Build-Pipeline grün bekommen (siehe README).
4. **Commits signieren** — sowohl GPG als auch X.509 werden akzeptiert. Unsignierte
Commits werden nicht gemerged.
5. PR öffnen mit klarer Beschreibung: Was ändert sich, warum, Breaking Change ja/nein.
## Code-Stil
Jede Sprache hat ihre eigene Konvention — siehe README des jeweiligen Repos.
Tendenziell: Pflegt euch an den Standards, die wir bereits im Code verwenden.
## Lizenz
Beiträge gehen unter der MIT-Lizenz ein (siehe `LICENSE`). Mit dem Öffnen eines
PRs bestätigst du, dass du das Recht hast, deinen Beitrag unter diese Lizenz zu
stellen.
## Kontakt
`developers@hightrusted.net`

146
README.md
View file

@ -1,3 +1,145 @@
# capture-node # hightrusted CAPTURE — Node.js SDK
Node.js SDK für die hightrusted CAPTURE API > **Status:** v0.1 Preview — API stabil, SDK in aktiver Entwicklung
Offizielles Node.js-SDK für die [hightrusted CAPTURE API](https://capture.hightrusted.net) —
forensische Web-Captures mit qualifiziertem Zeitstempel nach RFC 3161 / eIDAS Art. 41.
**Made in Germany.** Server in Deutschland. DSGVO-nativ. Kein US-Cloud-Anbieter
in der Verarbeitungskette. Quelloffen unter MIT-Lizenz.
## Was die CAPTURE API tut
Sie nimmt eine URL entgegen, rendert die Seite vollständig (inkl. JavaScript),
liefert sie als PDF/A zurück und versieht das Ergebnis mit einem qualifizierten
Zeitstempel. Das Ergebnis ist gerichtsverwertbar und Jahre später noch
verifizierbar — auch nachdem die Original-Seite längst offline ist.
Anwendungsfälle: Markenrechtsverletzungen dokumentieren, Auftragsbedingungen
zum Buchungszeitpunkt sichern, Compliance-Nachweise für Behörden, Beweissicherung
durch Anwälte und Sachverständige.
## Installation
```bash
npm install @hightrusted/capture
```
## Quickstart
```javascript
import { Client } from '@hightrusted/capture';
const client = new Client({ apiKey: 'ht_live_...' });
// Synchron — wartet bis zu 30 s auf das fertige PDF
const capture = await client.capture({ url: 'https://example.com' });
console.log(capture.id);
console.log(capture.verifyUrl);
console.log(capture.timestamp.issuedAt);
// PDF herunterladen
await capture.download('./beweis.pdf');
```
## Authentifizierung
Bearer-Token mit API-Key. Key-Erzeugung im Dashboard:
https://capture.hightrusted.net/dashboard/api-keys
```javascript
// API-Key direkt
const client = new Client({ apiKey: 'ht_live_...' });
// oder über Umgebungsvariable HIGHTRUSTED_API_KEY
const client = new Client();
```
## Asynchrone Captures + Webhooks
```javascript
const job = await client.captureAsync({
url: 'https://example.com',
webhookUrl: 'https://your-app.tld/webhooks/capture',
});
// job.status === 'queued'
// später, sobald der Webhook capture.ready geliefert hat:
const capture = await client.get(job.id);
await capture.download('./beweis.pdf');
```
## Verify
```javascript
const result = await client.verify('cap_...');
console.log(result.valid); // true
console.log(result.timestamp); // 2026-04-25T11:29:40Z
```
## Rate Limits
Limits werden pro API-Key gemessen. Bei Überschreitung: HTTP 429 mit
`Retry-After`-Header. Das SDK respektiert den Header automatisch und retried.
| Plan | req/min | Calls/Monat |
|-----------|---------|-------------|
| Developer | 5 | 100 |
| Starter | 30 | 300 |
| Growth | 120 | 2.000 |
| Scale | 600 | 10.000 |
## Voraussetzungen
- Node.js 18 oder höher
- ESM und CommonJS werden beide unterstützt
- TypeScript-Typdefinitionen sind enthalten
## Entwicklung
```bash
git clone ssh://git@git.hightrusted.net:2222/hightrusted-capture/node.git
cd node
npm install
npm test
```
## Roadmap
- [ ] v0.1 — Basis-Client (Promise-API), Verify, Download
- [ ] v0.2 — Retry-Logik, Webhook-Signatur-Verifikation, vollständige TypeScript-Defs
- [ ] v0.3 — Stream-API für große PDFs
- [ ] v1.0 — Stabile API, semantische Versionierung
## Verwandte Repositorys
**Im selben Produkt** ([`hightrusted-capture`](https://git.hightrusted.net/hightrusted-capture)):
- [`openapi`](https://git.hightrusted.net/hightrusted-capture/openapi) — OpenAPI 3.1 Spec (Single Source of Truth)
- [`postman`](https://git.hightrusted.net/hightrusted-capture/postman) — Postman Collection
- [`examples`](https://git.hightrusted.net/hightrusted-capture/examples) — Beispiel-Anwendungen
- [`python`](https://git.hightrusted.net/hightrusted-capture/python) — Python-SDK
- [`php`](https://git.hightrusted.net/hightrusted-capture/php) — PHP-SDK
**Plattform-übergreifend** ([`hightrusted`](https://git.hightrusted.net/hightrusted)):
- [`platform`](https://git.hightrusted.net/hightrusted/platform) — Plattform-Übersicht, Architektur, Produkt-Liste
- [`developer-portal`](https://git.hightrusted.net/hightrusted/developer-portal) — gemeinsame Konventionen, Auth, Errors, Rate-Limits
- [`compliance`](https://git.hightrusted.net/hightrusted/compliance) — DSGVO, AGB-Templates, Whitepaper
## Support
- **Doku:** https://capture.hightrusted.net/api/docs
- **Status-Page:** https://status.hightrusted.net
- **Developer Support:** developers@hightrusted.net
- **Sicherheitslücken:** siehe [SECURITY.md](./SECURITY.md)
## Lizenz
MIT — siehe [LICENSE](./LICENSE).
---
**hightrusted GmbH** — *The European Trust Infrastructure.*
Made in Germany. DSGVO-nativ. eIDAS-konform.

33
SECURITY.md Normal file
View file

@ -0,0 +1,33 @@
# Security Policy
## Sicherheitslücken melden
Wenn du eine Sicherheitslücke in diesem SDK oder in der hightrusted CAPTURE API
findest, **öffne kein öffentliches Issue**. Stattdessen:
- **E-Mail:** `security@hightrusted.net`
- **PGP-Key:** veröffentlicht auf https://hightrusted.net/.well-known/security.txt
Bitte gib in der Meldung an:
- Betroffenes Repository / SDK-Version
- Beschreibung der Schwachstelle und potenzielle Auswirkung
- Schritte zur Reproduktion
- Falls vorhanden: Proof-of-Concept-Code
Wir bestätigen den Eingang innerhalb von 48 Stunden und arbeiten an einer
zeitnahen Behebung. Verantwortliche Offenlegung wird honoriert — wir nennen
Reporter (auf Wunsch) in den Release-Notes.
## Unterstützte Versionen
Während der `v0.x`-Phase werden nur die jeweils aktuellste Minor-Version und
deren letzte zwei Patch-Versionen aktiv mit Sicherheits-Updates versorgt.
Ab `v1.0` gilt: aktuelle Major + vorherige Major (12 Monate Übergangsfrist).
## Out of Scope
Diese Policy gilt für die SDKs in diesem Repository und die zugehörige
hightrusted CAPTURE API. Für Schwachstellen in anderen hightrusted-Produkten
(SIGN, ID, MEET, PAY, …) gilt jeweils die dortige `SECURITY.md`.