Zum Inhalt springen
Übersicht Übersicht News News
Teilen

Publishable Keys

Browser-sichere API-Calls. Ohne eigenes Backend.

Ein Publishable Key (po_pk_) darf im Frontend stehen: scope-begrenzt, origin-gebunden und budget-gedeckelt.

Für Claude Artifacts, ChatGPT Canvas, Grok und jede eigene Web-App.

Eigener Präfix po_pk_ Standardmäßig Origin-gebunden Jederzeit widerrufbar

Direkt aus dem Browser

Von der AI-Canvas direkt zum API-Aufruf

Sie bauen in Claude Artifacts, ChatGPT Canvas oder Grok eine PDF-zu-Text-App. Ohne Backend blieb der API-Aufruf bisher aus: CORS blockiert, ein Secret Key stünde sichtbar im Quelltext, und ein offener Key belastet Ihr Konto. Genau diese Lücke schließen Publishable Keys.

Funktioniert in Claude ArtifactsChatGPT CanvasGrokJede Browser-App

In Claude, ChatGPT oder Grok einfügen

Ein Prompt, der jede AI-Canvas in eine echte, API-gestützte Demo verwandelt — ohne Backend.

AI-Canvas Prompt
Read this API doc:
https://api.paperoffice.ai/latest/docs/llms-full.txt Build a single-file React app (Claude Artifact / ChatGPT Canvas / Grok):
User uploads a PDF, the app calls
/job/add/paperoffice_aiocr___generate directly from the browser
and shows the extracted text. Auth: Bearer po_pk_MY_PUBLISHABLE_KEY (prompt user for the key).
Use processing_lane=instant for sync results. Origin header is set by the browser.

Ein Preset wählen, einen Key erstellen, einfügen.

Das Dashboard liefert Presets für Scopes und Budget. Origins bleiben leer — tragen Sie den Origin-Header aus den Browser-DevTools ein, dann kopieren Sie den Key in Ihren Prompt.

Key erstellen
JavaScript
const form = new FormData();form.append("file_1", fileInput.files[0]);form.append("processing_lane", "instant");form.append("client_wait", "true");const response = await fetch("https://api.paperoffice.ai/latest/job/add/paperoffice_aiocr___generate", {  method: "POST",  headers: { Authorization: "Bearer po_pk_YOUR_PUBLISHABLE_KEY" },  body: form,});console.log(await response.json());

Erster Aufruf

fetch aus dem Browser, Origin setzt der Browser

Der Aufruf geht an POST /latest/job/add/{pipeline} — derselbe Endpunkt wie mit einem Secret Key. Neu sind nur der Key-Typ und der Origin-Header, den der Browser automatisch mitschickt.

  • Origin kommt vom Browser

    fetch setzt den Origin-Header selbst. Skripte außerhalb des Browsers (cURL, Node) müssen ihn ausdrücklich senden — sonst antwortet die API mit 403 ORIGIN_HEADER_REQUIRED.

  • Ergebnis inline

    Mit processing_lane=instant und client_wait=true hält die API die Verbindung und liefert das Ergebnis direkt in der Antwort.

  • Klare Fehlercodes

    402 BUDGET_EXHAUSTED, 403 DOMAIN_NOT_ALLOWED, 403 SCOPE_NOT_GRANTED, 429 RATE_LIMIT_EXCEEDED — jede Grenze meldet sich mit einem eigenen Code.

Security-Matrix

Sechs Kontrollen, alle serverseitig erzwungen

Scope-begrenzt, origin-gebunden, budget-gedeckelt, jederzeit widerrufbar. Jede Kontrolle wird serverseitig durchgesetzt — deshalb darf der Key im Frontend-Code stehen.

  • Scope-begrenzt

    Keys erreichen nur die Endpoint-Gruppen, die Sie explizit freigeben: ocr:read, llm:generate, translate:text und weitere. Aufrufe außerhalb des Scopes liefern HTTP 403.

  • Origin-gebunden

    Jede Anfrage muss einen Origin-Header mitbringen, der zur Allow-List des Keys passt (exakter Host oder Subdomain-Wildcard). Passt er nicht, liefert die API HTTP 403.

  • Kein Extra-Minuten-Limit

    Es gibt kein eigenes Minuten-Limit nur für po_pk_. Es gelten die normalen Token-Rate-Limits des Kontos; den Verbrauch deckelt das Lifetime-Budget.

  • Budget-gedeckelt

    Jeder Key trägt ein Lifetime-Budget. Ist es aufgebraucht, liefert die API HTTP 402 BUDGET_EXHAUSTED — der Verbrauch endet dort, nicht erst bei der Abrechnung.

  • Widerruf jederzeit

    Keys lassen sich im Konto jederzeit widerrufen. Ein widerrufener Key wird von der API nicht mehr akzeptiert.

  • Fest gesperrt

    HTTP DELETE sowie Konto-Login, Key-Verwaltung, OAuth, Partner-Admin, Zahlungsmutation und Passwort-Crack bleiben für jeden po_pk_ fest gesperrt. Dokumentierte Produkt-APIs — inklusive POST-Löschen, Webhooks, Billing-Lesen und CRM — sind erlaubt.

Key-Hierarchie

Drei Key-Typen, klare Verantwortlichkeiten

Secret Key für den Server, Publishable Key für den Browser — plus ein User Token für nutzerbezogenen, ratenlimitierten Zugriff.

Präfix Typ Use-Case Browser-sicher Default-Scope
po_sk_ Secret Key Server-to-Server, voller API-Zugriff Nein Alle Endpoints
po_ut_ User Token User-scoped, Tier-limitiert Nein Tier-basiert
po_pk_ Publishable Key Browser / AI-Canvas (Claude, ChatGPT, Grok) Ja Scope-Liste

Authentifizierung & Keys

Drei Presets

Ein Klick. Ein Key. Ein Zweck.

Jedes Preset ist für einen konkreten Use-Case eingestellt — sichere Defaults, kuratierte Scopes, realistische Budgets. Alles jederzeit im Dashboard anpassbar.

  • DEFAULT Sicheres Lesen

    Sichere Standardrechte für einfache Demos und interne Tools: OCR, LLM, Translate, Documents, Search.

    Berechtigungsbereiche (Scopes)

    ocr:readllm:generatetranslate:textdocuments:uploaddocuments:readsearch:query
    Mit diesem Preset starten
  • WIDGET Öffentliche Website

    Für Kontaktformulare, Chat-Widgets und Booking-Buttons auf der eigenen Firmenwebsite.

    Berechtigungsbereiche (Scopes)

    knowledge:readwidget:chatwidget:bookingwidget:formswidget:contactwidget:leadwidget:fingerprint
    Mit diesem Preset starten

Erster API-Call

Bereit für den ersten Aufruf aus dem Browser?

Key erstellen, llms-full.txt öffnen, Prompt einfügen — Ihre App ruft die API direkt aus Claude, ChatGPT oder Grok auf.

Eigener Präfix Ohne Backend Jederzeit widerrufbar
Video

Publishable Keys in Aktion

Sehen Sie, wie PaperOffice Publishable Keys in der Praxis funktioniert — im Video.

Publishable Keys in Aktion

Häufige Fragen

Alles Wichtige im Überblick

Wie unterscheidet sich po_pk_ von po_sk_?

po_sk_ (Secret Key) ist für Server-zu-Server-Integration gedacht — voller Zugriff auf die API, niemals im Browser einbinden. po_pk_ (Publishable Key) ist für Browser-Code gebaut: scope-begrenzt, origin-gebunden, budget-gedeckelt. Gleiche API, anderes Sicherheitsprofil.

Warum nicht einfach einen Reverse-Proxy aus dem eigenen Backend nutzen?

Das ist der klassische Weg — er setzt aber weiterhin ein Backend voraus. AI-Artifacts (Claude, ChatGPT, Grok) sind auf den Betrieb ohne eigenes Backend ausgelegt. Publishable Keys machen das möglich, ohne Ihren Secret Key preiszugeben: Die Grenzen werden serverseitig durchgesetzt.

Funktioniert das in Claude Artifacts, trotz deren CORS-Sandbox?

Ja. Der Aufruf läuft direkt aus dem Browser, den Origin-Header setzt der Browser selbst. PaperOffice liefert keine Vendor-Allow-List mit; die Origin tragen Sie beim Anlegen des Keys aus den DevTools ein.

Was passiert, wenn mein po_pk_ öffentlich einsehbar wird?

Der Schaden bleibt eingegrenzt: Der Origin-Lock blockiert die Nutzung auf fremden Domains, das Budget-Limit beendet den Verbrauch, das Rate-Limit bremst automatisierte Zugriffe. Widerrufen Sie den Key im Konto — danach akzeptiert die API ihn nicht mehr.

Kann ich meine eigene Domain als erlaubtes Origin hinzufügen?

Ja. Beim Erstellen des Keys fügen Sie jede Origin zur Allow-List hinzu — als exakten Host oder als Subdomain-Wildcard. Das WIDGET-Preset ist genau dafür gebaut: Registrieren Sie Ihre eigene Domain und betten Sie Chat-, Booking- oder Kontakt-Widgets ohne Backend ein.

Wie setze ich das Budget pro Key?

Beim Erstellen wählen Sie ein Lifetime-Limit; die Presets bringen jeweils eine Vorgabe mit. Ist das Limit erreicht, liefert die API HTTP 402 BUDGET_EXHAUSTED. Sie können den Wert im Konto jederzeit anpassen.

Braucht ein po_pk_ einen eigenen Tarif?

Nein. Der Publishable Key ist eine zusätzliche Schutzschicht um Ihr bestehendes Konto: Er begrenzt Scopes, Origins und Budget. Welcher Plan zu Ihrem Setup passt, zeigt die Preisübersicht.

Welche Endpoints sind für po_pk_ gesperrt?

HTTP DELETE sowie Konto-Login, Nutzer-Admin, Key-Verwaltung, OAuth, Partner-Admin, Stripe-Checkout und Passwort-Crack sind fest gesperrt. Dokumentierte Produkt-APIs sind erlaubt, darunter POST-Löschen, Webhooks, Billing-Lesen, Import und CRM. Workspace löschen, Papierkorb leeren und Legal-Hold-Freigabe bleiben UI-only (403 UI_ONLY_ENDPOINT).

Wo wollen Sie PaperOffice testen?

Computer und Smartphone sind verbunden: Workspace am Rechner, Erfassen am Telefon.

Ihre Testversion ist bereit

Wo möchten Sie starten?

Der volle Workspace ist für den Computer optimiert. Die Mobile-Version eignet sich zum Erfassen, Prüfen und Freigeben von Dokumenten.

app.paperoffice.ai

Am Computer starten

Wir senden Ihren persönlichen Zugangslink an Ihre E-Mail-Adresse.

Kostenlos registrieren App öffnen PaperOffice App Das volle Programm: Web, Desktop und Mobile. Dokumente erfassen, organisieren, suchen und mit dem Team arbeiten. Kostenloses Konto erforderlich Playground öffnen Playground Ausgewählte Funktionen sofort ausprobieren — ohne Registrierung, mit einem eingeschränkten Demo API Key. Eingeschränkter Demo API Key