Zum Inhalt

Web-Links — Formulare direkt aus einer Webseite öffnen

Mit Web-Links kannst du jedes KCForms-Formular von einer extern gepflegten Webseite, einem CMS oder einer Intranet-Seite aus direkt verlinken — ohne dass der Besucher den Umweg über das KCForms-Login, den Katalog oder die Startseite gehen muss.

Technisch ist jeder Web-Link ein Eintrag in der Tabelle id_encoder mit einer zufälligen, 20-stelligen ID. Die Adresse /adhoc/<id> nimmt den Klick entgegen, prüft Berechtigung und Ablauf und öffnet das Formular.


  • Kontaktformular auf der Firmen-Homepage — „Schreib uns" verlinkt auf ein öffentliches Anfrageformular, das ohne Login ausgefüllt werden kann.
  • Anmeldung zu einer Veranstaltung — der Link landet in der Einladungs-Mail oder im Newsletter und zeigt direkt das Anmeldeformular.
  • Mitarbeiter-Bereich im Intranet — eine Übersichtsseite verlinkt alle relevanten Antrags-Formulare; der Anwender ist bereits per SSO/Login angemeldet und kommt mit einem Klick rein.
  • Dauerlink in der Signatur — „Reisekosten-Abrechnung einreichen" unter jeder Mail; immer derselbe Link, kein Ablauf nötig.

  1. System-Administration → Schnittstellen & Verteilung → Web-Links öffnen.
  2. + Neuer Web-Link klicken.
  3. Formular wählen: Tanja's erstes Formular.
  4. Wer darf den Link öffnen? — für eine öffentliche Webseite „Anonym (öffentlich)" wählen.
  5. Datensatz-Nr. — leer lassen, damit jeder Klick einen neuen Datensatz startet.
  6. Ablauf — leer lassen für „unbegrenzt" oder ein Datum setzen, wenn der Link nur eine zeitlich befristete Aktion betrifft (z.B. eine Anmeldung bis 31.12.).
  7. Link erzeugen drücken.

Du bekommst eine URL der Form:

https://forms.example.com/adhoc/AbcDefGhJkLmNpQrSt2

Diese kannst du jetzt in deinem CMS einbetten:

<a href="https://forms.example.com/adhoc/AbcDefGhJkLmNpQrSt2">
  Jetzt anmelden
</a>

Ein Klick auf den Link öffnet Tanja's erstes Formular mit einem neuen, leeren Datensatz.

Das Formular selbst freigeben

Damit anonyme Besucher durchkommen, braucht das Formular zusätzlich die Zugriffsstufe Anonym (öffentlich) — siehe Zugriff auf Formulare. Der Link allein reicht nicht.


Voraussetzung: die öffentliche Basis-URL

Damit die fertige Adresse den richtigen Rechnernamen enthält, trägst du einmalig die öffentliche Adresse der Installation ein:

  • System-Administration → Betrieb & Überwachung → System-Einstellungen → Öffentliche Basis-URL (Einstellung system.publicBaseUrl)
  • Wert z. B. https://forms.example.com

Fehlt der Wert, zeigt die Liste statt der Adresse den Hinweis „system.publicBaseUrl nicht gesetzt". Dieselbe Basis-URL nutzen auch Ad-hoc-Links in Mails.


Auth-Stufen im Detail

Stufe (Wert) Bedeutung
Anonym (öffentlich) (anonymous) Keine Anmeldung nötig — außer die System-Einstellung Ad-hoc-Links — Anmeldung verlangt sie (siehe unten). Für Kontakt- und Anmeldeformulare.
Öffentlich – immer ohne Login (public) Immer ohne Anmeldung, auch wenn die System-Einstellung eine verlangt. Wer bereits angemeldet ist, wird für diesen Aufruf als anonymer Besucher geführt. Für öffentlich verlinkte Formulare, die Personen ohne Konto ausfüllen.
Jeder eingeloggte Anwender (any) Nur angemeldete Benutzer; ohne Sitzung erscheint zuerst die Anmeldung. Für das Intranet.
Bestimmte Benutzer (user:…) Anmeldenamen, durch Semikolon oder Komma getrennt. Alle anderen sehen einen Fehler.
Bestimmte Gruppen (group:…) Gruppennamen; die Mitgliedschaft entscheidet („nur die Gruppe LEITUNG sieht den Genehmigungs-Link").

Die System-Einstellung Ad-hoc-Links — Anmeldung (unter System-Einstellungen) wirkt auf alle Links:

  • Standard — als „anonym" freigegebene Links öffnen ohne Anmeldung.
  • Anmeldung erzwingen — auch „anonyme" Links verlangen eine Anmeldung; nur public-Links bleiben offen.
  • Immer neu anmelden — jeder Aufruf zeigt die Anmeldung, auch für bereits angemeldete Benutzer. Praktisch zum schnellen Benutzerwechsel beim Testen von Workflows.

Wer den Link hat, hat den Zugriff

Ein anonymer Web-Link ist wie ein Schlüssel: Wer ihn weitergibt, gibt den Zugriff weiter. Personenbezogene oder vertrauliche Daten daher nicht über einen anonymen Link auf einen bestehenden Datensatz ausliefern — lieber ein leeres Formular verlinken, das der Besucher selbst ausfüllt.

Jeder anonyme Besucher sieht nur seine eigenen Anträge

Wer über einen anonymen oder öffentlichen Link kommt, bekommt eine eigene Kennung für seine Sitzung. Er sieht und ändert nur die Anträge, die er in dieser Sitzung selbst angelegt hat — nicht die anderer Besucher desselben Links. Öffnet er den Link in derselben Sitzung erneut, behält er seine Kennung. Mit einer neuen Sitzung (anderer Browser, Sitzung abgelaufen, Einstellung Immer neu anmelden) ist der frühere Antrag für ihn nicht mehr erreichbar; die Bearbeitung übernehmen dann die Sachbearbeiter.


Wenn du beim Anlegen eine Datensatz-Nr. angibst, öffnet der Link gezielt diesen einen Datensatz statt einen leeren. Das funktioniert auch mit der anonymen Stufe — dann ist die zufällige ID im Link das einzige „Geheimnis", das den Datensatz freigibt.

Typische Anwendung: du verschickst per Mail eine personalisierte Rückfrage an einen Kunden („Bitte noch Anhang nachreichen") und verweist auf einen vorbefüllten Antrag. Aus einem Skript heraus geht das direkt mit mail.newAdhocInvocation().


Die Seite Web-Links zeigt:

  • alle Links der Installation — auch die, die Skripte und Workflows per Mail erzeugt haben,
  • auf Wunsch nur die eines Formulars (Filter oben),
  • je Link: Formular, Stufe, Datensatz, Erstellt, Ablauf und die Adresse (Klick = in die Zwischenablage kopieren).

Das ✕ rechts in der Zeile löscht einen Link endgültig. Wer ihn noch als Lesezeichen hat, bekommt danach einen Hinweis „Link ungültig".

Abgelaufene entfernen (N) löscht in einem Schritt alle Links, deren Ablaufdatum vorbei ist — sie funktionieren ohnehin nicht mehr. Die Zahl zeigt, wie viele es sind. Regelmäßig geht das auch per Zeitplaner-Job.


Schnellweg im Formular-Editor

Im Formular-Editor öffnet ⋯ Mehr → 🌐 Web-Link erzeugen … denselben Dialog — vorbelegt mit dem Formular, an dem du gerade arbeitest. Praktisch, wenn du gerade ein neues Formular gebaut hast und sofort einen Test-Link für den Redakteur brauchst.


REST-API (für Skripte und Integrationen)

Die Schnittstelle unter /api/admin/adhoc lässt sich auch direkt nutzen, um Web-Links automatisiert anzulegen (z. B. aus einer externen Verwaltung):

Methode Pfad Beschreibung
GET /api/admin/adhoc Liste aller Links, optional ?formId=…
POST /api/admin/adhoc Neuen Link anlegen — Body siehe unten
DELETE /api/admin/adhoc/{id} Link entfernen
POST /api/admin/adhoc/purge-expired alle abgelaufenen Links entfernen

POST-Body-Beispiel:

{
  "formId":    "tanja_01",
  "instanceId": null,
  "auth":      "anonymous",
  "expiresAt": "2026-12-31T23:59:59Z"
}

Response:

{
  "id":            "AbcDefGhJkLmNpQrSt2",
  "formId":        "tanja_01",
  "instanceId":    null,
  "auth":          "anonymous",
  "createdAt":     "2026-06-11T14:32:09Z",
  "expiresAt":     "2026-12-31T23:59:59Z",
  "createdBy":     "admin",
  "url":           "https://forms.example.com/adhoc/AbcDefGhJkLmNpQrSt2",
  "publicBaseUrl": "https://forms.example.com"
}

auth nimmt die Werte aus der Tabelle oben (anonymous, public, any, user:name1;name2, group:gruppe1;gruppe2). Die Schnittstelle ist Administratoren vorbehalten; anlegen (POST) dürfen auch Benutzer mit der Berechtigung FORM_STUDIO — das nutzt der Schnellweg im Formular-Editor.