API Dokumentation
Die Formsly REST API ermöglicht den programmatischen Zugriff auf Formulare und Antworten. Alle Anfragen erfolgen über HTTPS an https://formsly.ch/api.
Authentifizierung
Die API verwendet API-Keys zur Authentifizierung. Du findest und erstellst deine Keys unter Einstellungen → API-Keys in deinem Formsly-Dashboard.
Sende den Key als Authorization-Header:
curl https://formsly.ch/api/zapier/forms \
-H "Authorization: Bearer fsk_live_DEIN_API_KEY"Alternativ kann der Key als Query-Parameter übergeben werden (nicht empfohlen für Produktion, da Keys in Server-Logs erscheinen können):
curl "https://formsly.ch/api/zapier/forms?api_key=fsk_live_DEIN_API_KEY"/api/auth/verifyAPI-Key überprüfenPrüft ob ein API-Key gültig ist und gibt die zugehörigen Nutzer-Infos zurück.
// Response 200 OK
{
"user_id": "95ad5a4a-...",
"username": "name@beispiel.ch",
"email": "name@beispiel.ch"
}Formulare
/api/zapier/formsAlle Formulare abrufenGibt eine Liste aller Formulare des authentifizierten Nutzers zurück.
curl https://formsly.ch/api/zapier/forms \
-H "Authorization: Bearer fsk_live_DEIN_API_KEY"// Response 200 OK
[
{
"id": "2627c769-7f64-4839-befb-ac551d30cdea",
"name": "Mietinteressen-Anfrage"
},
{
"id": "e751ed0b-32b2-4020-9bca-65fc1fbe2d7d",
"name": "Bewerbungsformular"
}
]Antworten
/api/zapier/responsesAntworten abrufenGibt die neuesten Antworten eines Formulars zurück. Antwortfelder werden als flache Key-Value-Paare zurückgegeben.
| Parameter | Typ | Beschreibung |
|---|---|---|
| form_id* | string | ID des Formulars |
curl "https://formsly.ch/api/zapier/responses?form_id=2627c769-..." \
-H "Authorization: Bearer fsk_live_DEIN_API_KEY"// Response 200 OK
[
{
"id": "f1b00f39-...",
"form_id": "2627c769-...",
"submitted_at": "2026-03-14T10:44:38.604+00:00",
"consent_given": true,
"completion_time_seconds": 24,
"Vor- und Nachname": "Lena Musterfrau",
"E-Mail": "lena@beispiel.ch",
"Telefon": "+41 79 123 45 67"
}
]Formularfelder werden direkt als Top-Level-Felder mit dem Label als Key zurückgegeben. Verschlüsselte Antworten werden serverseitig entschlüsselt.
Webhooks
Webhooks senden eine HTTP POST-Anfrage an deine URL, sobald eine neue Antwort eingereicht wird. Ideal für Echtzeit-Integrationen.
/api/webhooks/zapierWebhook registrieren| Feld | Typ | Beschreibung |
|---|---|---|
| form_id* | string | ID des zu überwachenden Formulars |
| target_url* | string | URL die bei neuen Antworten aufgerufen wird |
curl -X POST https://formsly.ch/api/webhooks/zapier \
-H "Authorization: Bearer fsk_live_DEIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"form_id": "2627c769-...", "target_url": "https://deine-app.ch/webhook"}'// Response 200 OK
{
"id": "abc123-...",
"form_id": "2627c769-...",
"target_url": "https://deine-app.ch/webhook"
}/api/webhooks/zapierWebhook entfernencurl -X DELETE https://formsly.ch/api/webhooks/zapier \
-H "Authorization: Bearer fsk_live_DEIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id": "abc123-..."}'/api/zapier/responses.Zapier-Integration
Formsly ist als Zapier-Integration verfügbar. Verbinde dein Formsly-Konto mit über 7'000 Apps ohne eine einzige Zeile Code.
Formsly Switzerland auf Zapier öffnen →- Klicke auf den Link oben und akzeptiere die Einladung zur Formsly Zapier-Integration
- Erstelle einen API-Key unter Einstellungen → API-Keys
- Erstelle einen neuen Zap und wähle Formsly Switzerland als Trigger-App
- Verbinde dein Konto mit dem API-Key
- Wähle das gewünschte Formular aus dem Dropdown
- Konfiguriere deine Action (z.B. Google Sheets, E-Mail, CRM)
Fehlercodes
| Status | Bedeutung |
|---|---|
| 200 | Erfolgreich |
| 201 | Erstellt (z.B. neuer Webhook) |
| 400 | Fehlende oder ungültige Parameter |
| 401 | Ungültiger oder fehlender API-Key |
| 403 | Kein Zugriff auf diese Ressource |
| 404 | Ressource nicht gefunden |
| 500 | Interner Serverfehler |
// Fehler-Antwort
{
"error": "Unauthorized"
}Fragen zur API? Schreib uns an team@formsly.ch