Teilnahmezertifikat als PDF erstellen
Für jeden Kurs von Hand ein Zertifikat zu gestalten kostet Zeit, die bei größeren Gruppen kaum vertretbar ist. Dieser Dienst erzeugt aus Name, Kursbezeichnung und Datum automatisch ein fertiges PDF-Zertifikat mit eigenem Design, direkt auf dieser Seite oder automatisiert über die API.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Ein Layout, beliebig viele Namen
Das Grunddesign – Logo, Rahmen, Unterschriftfeld, Formulierung – wird einmal festgelegt; für jede teilnehmende Person ändern sich nur Name, Kursbezeichnung und Datum. Bei einem Webinar mit 200 Teilnehmenden bedeutet das 200 automatisch erzeugte Zertifikate statt 200 manuell bearbeitete Dateien. Fehler durch Tippfehler bei wiederholtem Copy-Paste entfallen, weil jeder Name direkt aus der Teilnehmerliste übernommen wird. Das Ergebnis ist bei 200 wie bei zwei Zertifikaten gleich zuverlässig.
Wofür ein Zertifikat mehr ist als Papierkram
Für Weiterbildungsanbieter ist das Zertifikat oft der sichtbarste Nachweis eines Kurses – ein Dokument, das die teilnehmende Person im Lebenslauf oder bei der eigenen Kundschaft zeigt. Ein sauber gestaltetes PDF mit klarer Kursbezeichnung, Datum und Unterschrift wirkt entsprechend seriöser als ein hastig zusammengestelltes Dokument. Die automatische Erstellung erlaubt dieses Niveau auch bei großen Teilnehmerzahlen. Vereine nutzen dieselbe Funktion für Urkunden bei Turnieren oder Ehrungen, mit demselben Prinzip aus festem Layout und wechselnden Namen.
Von der Teilnehmerliste zum fertigen Stapel
Statt eine Vorlage 200-mal von Hand zu bearbeiten, liefert die Teilnehmerliste – Name, E-Mail, Abschlussdatum – die Grundlage für die automatische Erstellung. Über die API lässt sich der Schritt direkt an das Ende eines Kurses oder Webinars anschließen: Sobald die letzte Einheit endet, entsteht das passende Zertifikat für jede Person, ohne manuellen Zwischenschritt. Der gesamte Ablauf lässt sich damit an das Ende eines Kurses koppeln, statt als separate Aufgabe irgendwann nachgeholt zu werden.
Preis und Verfügbarkeit
$0.040 pro Anfrage plus $0.001 pro Dokument, insgesamt $0.041 je Zertifikat. Ein Kurs mit 200 Teilnehmenden kostet damit $8.20 an Zertifikaten. Die Funktion ist stabil und nimmt bereits Ausführungen an, mit einer Grenze von 25 MB und 200 Seiten pro Dokument. Es gibt weder ein Abonnement noch eine Mindestanzahl – abgerechnet wird jedes einzelne Zertifikat zum selben Preis, egal ob eines oder tausend erzeugt werden.
Anwendungsfälle
Webinar mit 200 Teilnehmenden
Eine Weiterbildungsanbieterin schließt ein Online-Seminar ab und lässt automatisch 200 Teilnahmezertifikate erzeugen, jedes mit Name, Kursbezeichnung und Datum – statt jede Datei einzeln zu gestalten.
Urkunde für ein Vereinsturnier
Ein Sportverein in Stuttgart erstellt nach dem Jugendturnier für jede Teilnehmerin automatisch eine Urkunde mit Platzierung und Datum, direkt aus der Ergebnisliste.
Zertifikat für einen internen Schulungskurs
Weber Metallbau GmbH bescheinigt Mitarbeitenden nach einer Sicherheitsschulung automatisch die Teilnahme mit Datum und Kursbezeichnung, abgelegt in der Personalakte.
Abschlussbescheinigung eines Onlinekurses
Ein Bildungsträger erzeugt für jede Person, die einen Onlinekurs abschließt, automatisch die Abschlussbescheinigung als PDF, sobald die letzte Lektion abgeschlossen ist.
Häufige Fragen
Kann ich ein eigenes Design mit Logo und Unterschrift verwenden?
Ja, Logo, Rahmen, Farben und ein Unterschriftfeld gehören zum Layout und tragen die eigene Identität des Anbieters.
Wie erzeuge ich viele Zertifikate auf einmal?
Über die API lässt sich die Erstellung an eine Teilnehmerliste anschließen, sodass für jede Person automatisch ein eigenes Zertifikat entsteht.
Kann das Zertifikat auch eine Platzierung oder Note enthalten?
Ja, zusätzliche Angaben wie Platzierung, Note oder Ergebnis lassen sich in die übergebenen Daten aufnehmen und erscheinen im Dokument.
Was kostet ein Kurs mit 200 Teilnehmenden?
200 × $0.041 (Anfrage plus Dokument) = $8.20 insgesamt, abgerechnet pro Nutzung.
Werden die Namen der Teilnehmenden gespeichert?
Nein, die Daten dienen ausschließlich der Erstellung der Dokumente und werden danach nicht weiter aufbewahrt.
Brauche ich ein Konto, um Zertifikate zu erstellen?
Nein. Es gibt derzeit keine Konten – Sie zahlen direkt pro erstelltem Dokument.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/pdf/certificate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/certificate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/certificate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/certificate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/certificate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"pdf": "https://ejemplo.com/documento.pdf"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.certificate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 200 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
422 | task_failed | Die Aufgabe ist fehlgeschlagen und wird nicht berechnet. |