Zum Inhalt springen

API

Eine PDF-API für einen Cent

Komprimieren, zusammenführen und konvertieren aus Ihrem Code. $0.01 pro Dokument, die ersten 100 pro Monat kostenlos. Kein Abo, kein Mindestumsatz.

Die API verarbeitet Dateien auf dem Server

Anders als der Browser-Editor sendet die API die Datei an unseren Server. Sie wird im Arbeitsspeicher verarbeitet, nie auf die Festplatte geschrieben und nach der Antwort nicht aufbewahrt; Dateinamen werden nicht gespeichert. Für Dokumente, die Ihr Netzwerk nicht verlassen dürfen, nutzen Sie den Browser oder Enterprise.

Authentifizierung

Bearer-Schlüssel im Header

Erstellen Sie einen Schlüssel in Ihrem Dashboard. Er beginnt mit sd_live_und wird nur einmal angezeigt: Wir speichern nur seinen Hash. Senden Sie den Schlüssel mit jeder Anfrage:

Authorization: Bearer sd_live_XXXXXXXXXXXXXXXXXXXXXXXX

Anfragekörper – multipart/form-datamit den Feldern fileoder eine Raw-Datei mit Content-Type: application/pdf | image/png | image/jpeg. Die Antwort ist die fertige PDF. Limit – 100 MB pro Datei und 50 Dateien pro Anfrage.

Endpunkte

Drei Vorgänge

POST/api/v1/compress

Komprimieren

Verlustfreie Komprimierung: entfernt Info- und XMP-Metadaten sowie ungenutzte Objekte und baut das Dokument mit Objektströmen neu auf. Das Ergebnis ist nie größer als das Original.

file
Eine PDF-Datei. Kann als Raw-Body mit Content-Type: application/pdf gesendet werden.
curl
curl -X POST https://lockpage.tools/api/v1/compress \
  -H "Authorization: Bearer $LOCKPAGE_KEY" \
  -F file=@contract.pdf \
  -o contract.min.pdf
POST/api/v1/merge

Zusammenführen

Führt PDFs in der Reihenfolge der Datei-Felder zusammen. 2 bis 50 Dateien pro Anfrage.

file
Wiederholtes Feld, 2 bis 50 PDFs. Die Reihenfolge bleibt erhalten.
curl
curl -X POST https://lockpage.tools/api/v1/merge \
  -H "Authorization: Bearer $LOCKPAGE_KEY" \
  -F file=@act.pdf \
  -F file=@invoice.pdf \
  -o merged.pdf
POST/api/v1/convert

Konvertieren

Der Server unterstützt PNG und JPEG → PDF: Jedes Bild wird zu einer Seite. Andere Richtungen liefern 501 not_implemented– vorerst funktionieren sie nur im Browser.

file
Ein oder mehrere PNG-/JPEG-Bilder.
to
Zielformat: pdf. Verwenden Sie für einen Raw-Body den Query-Parameter ?to=pdf.
curl
curl -X POST "https://lockpage.tools/api/v1/convert?to=pdf" \
  -H "Authorization: Bearer $LOCKPAGE_KEY" \
  -H "Content-Type: image/jpeg" \
  --data-binary @scan.jpg \
  -o scan.pdf

Antworten

Erfolg und Fehler

Eine erfolgreiche Antwort ist eine PDF mit Nutzungs-Headern. Ein Fehler ist JSON mit einem maschinenlesbaren Code und einer verständlichen Meldung, die Sie Nutzern anzeigen können.

200 OK
HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Disposition: attachment; filename="securadoc-merge.pdf"
Cache-Control: no-store
X-Lockpage-Documents: 2
X-Lockpage-Price-Usd-Per-Document: 0.01

%PDF-1.7 …
Fehler
HTTP/1.1 400 Bad Request Content-Type: application/json { "error": { "code": "bad_request", "message": "merge needs at least two files" } }
HTTPCodeWann
400bad_requestKeine Dateien, falsche Dateiauswahl für den Vorgang, beschädigte PDF
401unauthorizedKein Authorization-Header, ungültiger oder widerrufener Schlüssel
413too_largeDie Datei ist größer als 100 MB
415unsupported_media_typeDas Eingabedateiformat wird nicht unterstützt
501not_implementedDiese Konvertierung ist auf dem Server noch nicht verfügbar
500internalInterner Fehler. Bitte versuchen Sie es später erneut.
Node.js 20+
const form = new FormData();
form.append("file", new Blob([await fs.readFile("a.pdf")]), "a.pdf");
form.append("file", new Blob([await fs.readFile("b.pdf")]), "b.pdf");

const res = await fetch("https://lockpage.tools/api/v1/merge", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.LOCKPAGE_KEY}` },
  body: form,
});
if (!res.ok) throw new Error((await res.json()).error.message);
await fs.writeFile("merged.pdf", Buffer.from(await res.arrayBuffer()));

Nutzung

So funktioniert die Preisgestaltung

Ein Dokument ist eine Eingabedatei in einer erfolgreichen Anfrage: Das Zusammenführen von drei PDFs zählt als drei Dokumente. Fehlgeschlagene Anfragen sind kostenlos. Die ersten 100 Dokumente pro Kalendermonat sind kostenlos, danach $0.01 pro Dokument. Ihre Nutzung im aktuellen Monat sehen Sie im Dashboard.

Dokumente pro MonatKosten
bis zu 100Kostenlos
1,000$9
10,000$99
100,000$999