Entwicklerplattform

E-Signatur direkt
in Ihrem Produkt.

Ihr Server erzeugt mit einem Secret Key eine kurzlebige Sitzung, Ihre Seite rahmt sie mit einem 1,5 KB großen SDK ein, und Ihre Nutzer unterschreiben, ohne Ihr Produkt zu verlassen. Bauen Sie die gesamte Integration zuerst mit kostenlosen Test-Keys.

Test-Keys in jedem Tarif, auch in Free Ihr Secret Key erreicht nie einen Browser SDKs unter MIT-Lizenz auf GitHub
So funktioniert es

Drei Schritte — und der Secret Key
verlässt Ihren Server nie

Jede Einbettung beginnt als Sitzung, die Ihr Server erzeugt. Ihre Seite rahmt die zurückgegebene URL ein, und der Frame spricht über einen festgepinnten postMessage-Kanal mit Ihrem Code.

  1. 1

    Sitzung auf Ihrem Server erzeugen

    Rufen Sie POST /embed_sessions mit Ihrem Secret Key auf und nennen Sie das Dokument sowie den Origin der Seite, die den Frame zeigen wird. Zurück kommen eine id und eine URL, die abläuft.

  2. 2

    In Ihrer Seite einbinden

    Übergeben Sie die URL an @gingerdocs/embed. Das SDK rahmt das Signiererlebnis auf unserem Origin ein, pinnt Origin und Sitzungs-id auf beiden Seiten fest und liefert Ihrem Code typisierte Events.

  3. 3

    Auf Webhooks reagieren

    SDK-Events sind UX-Signale — einen Spinner ausblenden, eine Bestätigung zeigen. Die eigentliche Verarbeitung hängen Sie an den signierten Webhook document.completed; jedes Event bleibt 90 Tage lesbar.

Ihr ServerNode.js
const res = await fetch('https://api.gingerdocs.com/api/v1/embed_sessions', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.GINGERDOCS_SECRET_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    kind: 'signing',
    document_id: documentId,
    host_origin: 'https://app.example.com',
  }),
})
const { id, url } = await res.json()
Ihre SeiteJavaScript
import { mount } from '@gingerdocs/embed'

const embed = mount('#signing', { url, sessionId: id })

embed.on('ready', () => hideLoader())
embed.on('completed', () => showConfirmation())
embed.on('session_expired', async () => {
  const fresh = await refetchSession()
  embed.reload(fresh.url, { sessionId: fresh.id })
})
ReactJSX
import { GingerDocsEmbed } from '@gingerdocs/react'

<GingerDocsEmbed
  url={session.url}
  sessionId={session.id}
  onEvent={event => event.type === 'completed' && showConfirmation()}
/>

Übergeben Sie die URL unverändert: Ihr Fragment trägt das Sitzungs-Credential, und ihre Query trägt den Wert, mit dem unser Edge entscheidet, wer die Seite einrahmen darf.

Drei Arten der Einbettung

Von der einzelnen Unterschrift
bis zum vollständigen Editor

Jede Einbettung ist eine Sitzung, die Ihr Server erzeugt. Ihre Art (kind) und ihr Modus (mode) bestimmen, was die Person im Frame tun kann — und der Server erzwingt das bei jeder Anfrage, nicht nur in der Oberfläche.

kind: signing

Signatur-Sitzung

Ein Unterzeichner, ein Dokument, in Ihrer Seite. Kein E-Mail-Umweg, keine Weiterleitung von Ihrer Website weg.

  • Dokument lesen, eigene Felder ausfüllen und unterschreiben — zeichnen, tippen oder hochladen
  • Mit Begründung ablehnen, was Ihre Seite als Event erfährt
  • Das signierte PDF am Ende des Vorgangs herunterladen
  • Die Sprache des Frames über dessen eigenes Menü wechseln
kind: workspace · mode: minimal

Arbeitsbereich · minimal

Vorlagengestützte Erstellung für einen Ihrer eigenen Nutzer, ohne einen Editor freizugeben.

  • Nutzbare Vorlagen durchsehen, Variablen und eigene Eingaben ausfüllen
  • Absender und Unterzeichner benennen — von Ihnen vorbelegt und gesperrt, wenn Sie möchten
  • Die Seiten beim Ausfüllen in der Vorschau sehen, dann erstellen und versenden
  • Ein eigenes PDF hochladen und versenden — das Signaturfeld wird automatisch platziert
kind: workspace · mode: advanced

Arbeitsbereich · advanced

Derselbe Editor, den die GingerDocs-App ausliefert, auf Ihrer Domain.

  • PDFs hochladen und Felder für Unterschrift, Initialen, Text, Datum und Kontrollkästchen platzieren
  • Entwürfe speichern und später wieder öffnen
  • Vorlagen aus einem PDF erstellen und selbst erstellte Vorlagen bearbeiten
  • Alles aus minimal ist ebenfalls enthalten

Ein vierter Modus, read_only, zeigt ein fertiges Dokument oder eine Vorlage ohne Handlungsmöglichkeit — ein Viewer, den Sie in Ihre eigene Oberfläche setzen können.

REST-API

Dasselbe Produkt,
als Endpunkte

Alles unter https://api.gingerdocs.com/api/v1, authentifiziert mit einem Bearer-API-Key. Einen Nutzer anlegen, ein Dokument hochladen, versenden und nachlesen, was passiert ist — in vier Aufrufen, aus jeder Sprache.

Konventionen, auf die Sie bauen können

  • Secret Keys für Ihre Server, Publishable Keys für eine schreibgeschützte Browser-Oberfläche — jeder auf das Nötige beschränkt (Scopes)
  • Zwei vollständig getrennte Umgebungen, test und live, auf denselben Endpunkten
  • Ein Idempotency-Key auf jedem POST macht Wiederholungen sicher
  • Fehler tragen einen stabilen maschinenlesbaren code; messages sind Anzeigetext und können sich ändern
  • 120 Anfragen pro Minute und Key, mit Retry-After bei einem 429
  • Definiert durch einen OpenAPI-3.1-Vertrag, gegen den jede Antwort validiert wird
API-Referenz öffnen
Die API fragen, wer Sie sindcURL
curl https://api.gingerdocs.com/api/v1/account \
  -H "Authorization: Bearer gd_sk_test_YOUR_KEY"
AntwortJSON
{
  "environment": "test",
  "scopes": ["documents", "templates", "users", "embed", "webhooks"],
  "plan": { "key": "free", "limit": 30, "used": 12, "remaining": 18 },
  "defaults": { "email_delivery": "platform" }
}

Users

Die Personen in Ihrem Produkt, denen Dokumente gehören, verwaltet über Ihre eigene external_id.

Documents

Ein PDF hochladen oder aus einer Vorlage erzeugen, den Unterzeichner benennen, den Status verfolgen, die signierte Kopie herunterladen.

Fields

Felder für Unterschrift, Initialen, Text, Datum und Kontrollkästchen, platziert in normalisierten Seitenkoordinaten.

Templates

Vorlagen auflisten, teilen und instanziieren, die in der App oder in einem advanced-Arbeitsbereich erstellt wurden.

Sending

Wir mailen dem Unterzeichner — oder Sie liefern den Signaturlink selbst, und wir versenden gar nichts.

Webhooks & events

HTTPS-Endpunkte registrieren, das Zustellprotokoll lesen und jedes Event aus dem 90-Tage-Log erneut abrufen.

v1 kennt genau einen Unterzeichner pro Dokument — keine Empfängerlisten, keine Signaturreihenfolge, keine Übergabe.

Für den Produktivbetrieb gebaut

Die Teile, die Sie sonst
selbst bauen müssten

Das Signieren ist die einfache Hälfte. Der Rest — Zustellung, Verifizierung, Wiederholungen, Branding, Sprachen — kommt mit der Plattform.

Signierte Webhooks, 16 Event-Typen

HMAC-SHA256-signierte Zustellungen mit Wiederholungen und Zustellprotokoll. Jedes Event bleibt 90 Tage über die Events-API lesbar, sodass nichts verloren geht, während Ihr Endpunkt nicht erreichbar ist.

Eine Testumgebung, die keine E-Mail versendet

Test-Keys funktionieren in jedem Tarif. Die Ausgabe trägt ein Wasserzeichen und ist nicht rechtsverbindlich, nichts zählt gegen Ihren Tarif, ein Test-Endpunkt kann die Unterschrift simulieren, damit CI auf COMPLETED prüfen kann, und Testdaten werden nach 90 Tagen gelöscht.

Ihre Markenfarbe, Ihr Viewport

Übergeben Sie beim Erzeugen theme.primary_color, und Schaltflächen, Links und Fokusringe des Frames folgen ihr. Mit „Erweitern“ kann eine schmale Seitenleisten-Einbettung den ganzen Viewport übernehmen und wieder freigeben.

Den Signaturlink selbst zustellen

Pro Konto oder pro Versand entscheiden Sie, ob GingerDocs den Unterzeichner mit Ihrem Branding per E-Mail anschreibt oder Ihr Produkt das übernimmt — dann versenden wir nichts und geben Ihnen die Signatur-URL.

Ein Zertifikat, das Sie nennt

Wenn Sie den Link selbst zustellen oder einen Unterzeichner über eine eingebettete Sitzung zulassen, nennt das Abschlusszertifikat Ihre juristische Person als verifizierende Partei — die Verantwortung, die Sie mit den Integrator-Bedingungen übernehmen.

Sechs Sprachen im Frame

Signatur- und Arbeitsbereichs-Frames gibt es auf Englisch, Japanisch, Koreanisch, Deutsch, Spanisch und Französisch. Setzen Sie die Sprache an der Sitzung oder beim Einbinden; Unterzeichner können im Menü des Frames wechseln.

Open Source

Zwei kleine SDKs unter MIT-Lizenz

Das SDK tut genau eines: Es rahmt die Sitzungs-URL ein, pinnt Origin und Sitzungs-id auf beiden Seiten des postMessage-Kanals fest und liefert Ihrem Code typisierte Events. Sie lesen es in einem Durchgang.

MIT-LizenzUnter 1,5 KB gzipptKeine Abhängigkeiten

@gingerdocs/embed

Framework-frei. mount(), on(), reload(), unmount() — und das Erweitern-Protokoll, falls Sie das iframe lieber selbst bauen.

Auf GitHub ansehen

@gingerdocs/react

Eine dünne React-Komponente um das Kernpaket: ein onEvent-Handler für jedes Event, der sich gefahrlos inline übergeben lässt.

Auf GitHub ansehen
Preise für Entwickler

Kostenlos bauen. Für 100 $ im Jahr live gehen.

Mit Test-Keys bauen — kostenlos

Entwicklermodus und Test-Keys stehen in jedem Tarif zur Verfügung, auch in Free. Die gesamte Integration — erstellen, versenden, unterschreiben, Webhook, herunterladen — funktioniert in der Testumgebung.

Test-Key holen

Mit dem Developer-Tarif live gehen

100 $/ Jahr

Alles aus Pro mit denselben 1.000 Dokumenten-Uploads pro Monat, dazu Live-API-Keys, eingebettetes Signieren auf Ihren registrierten Domains und signierte Webhooks.

Zum Developer-Tarif

Starten Sie heute im Testmodus

Registrieren Sie sich kostenlos, schalten Sie unter Einstellungen → Entwickler den Entwicklermodus ein und machen Sie Ihren ersten API-Aufruf in wenigen Minuten. Keine Kreditkarte erforderlich.