Zum Hauptinhalt springen

JavaScript-SDK

Der einfachste Weg, Leads von Ihrer Website zu erfassen: Binden Sie das SDK ein und verknüpfen Sie es mit einem vorhandenen HTML-Formular. Das SDK prüft die Eingaben, sendet sie per REST-API und meldet Erfolg oder Fehler an Ihre Callbacks.

Einbinden​

<script src="https://app.advision360.de/sdk/app.min.js"></script>
<script>
Advision.configure({ apiKey: 'YOUR_API_KEY' })
Advision.bindForm('#lead-form')
</script>
FunktionBeschreibung
Advision.configure(options)Setzt den Lead-Schlüssel. Einmal pro Seite aufrufen, bevor ein Formular gebunden wird.
Advision.bindForm(selector, options?)Fängt das Absenden des Formulars ab und sendet die Daten als Lead.

Das SDK fügt jedem Lead automatisch die Adresse der aktuellen Seite hinzu (_meta.url). Sie erscheint in den Lead-Details als Herkunft.

Formularfelder​

Das SDK liest die Eingabefelder über ihr name-Attribut.

namePflichtHinweise
firstNamejaMaximal 100 Zeichen.
lastNamejaMaximal 100 Zeichen.
emailE-Mail oder TelefonGültige E-Mail-Adresse, maximal 255 Zeichen.
phoneE-Mail oder TelefonMaximal 50 Zeichen.
sourceneinHerkunft des Leads, siehe erlaubte Werte.
notesneinFreitext, wird am Lead gespeichert.
additionalFields.<key>neinEigene Werte, siehe Eigene Felder.

Jedes andere Feld des Formulars übernimmt das SDK ebenfalls in additionalFields, mit seinem name als Schlüssel. Die Felder _key, _redirect und _meta werden ignoriert.

Optionen von bindForm​

<script>
Advision.configure({ apiKey: 'YOUR_API_KEY' })

Advision.bindForm('#lead-form', {
onSuccess: () => {
window.location.href = '/danke'
},
onError: (error) => {
document.querySelector('#form-error').textContent = error.error
},
additionalData: { campaign: 'fruehjahr-2026' },
resetOnSuccess: true,
})
</script>
OptionTypBeschreibung
onSuccess(response) => voidWird nach erfolgreichem Versand aufgerufen.
onError(error: { error: string }) => voidWird bei Validierungs-, Netzwerk- oder API-Fehlern aufgerufen. error.error enthält die Fehlermeldung.
additionalDataobjectZusätzliche Werte, die in additionalFields jedes Leads übernommen werden, z. B. eine Kampagnenkennung.
resetOnSuccessbooleanFormular nach Erfolg leeren. Standard: true.

bindForm gibt eine Funktion zurück, die die Bindung wieder entfernt. Wird kein Formular zum Selektor gefunden, gibt bindForm undefined zurück und schreibt eine Warnung in die Konsole.

:::info Weiterleitung nach dem Absenden

Das SDK sendet das Feld _redirect nicht. Leiten Sie stattdessen in onSuccess weiter, wie im Beispiel oben.

:::

Programmatische API​

Ohne Formular senden Sie einen Lead mit submitLead. Mit validate prüfen Sie Daten vorab, ohne sie zu senden.

try {
await Advision.submitLead({
firstName: 'Max',
lastName: 'Mustermann',
email: 'max@example.com',
additionalFields: { budget: '5000' },
})
} catch (error) {
console.error(error.message)
}

const { valid, errors } = Advision.validate({
firstName: 'Max',
lastName: '',
email: 'max@example.com',
})
FunktionBeschreibung
Advision.submitLead(data)Prüft und sendet einen Lead. Gibt ein Promise zurück, das bei Fehlern mit einem Error abgelehnt wird.
Advision.validate(data)Gibt { valid, errors } zurück. Mögliche Schlüssel in errors: firstName, lastName, email, contact (weder E-Mail noch Telefon angegeben). Die Meldungen sind englisch.
Advision.getMeta()Gibt { url } mit der Adresse der aktuellen Seite zurück, so wie sie als _meta.url gesendet wird.

Eigener API-Host​

Standardmäßig sendet das SDK an den Host, von dem app.min.js geladen wurde. Mit endpoint legen Sie den Host selbst fest, z. B. wenn Sie das SDK selbst hosten:

Advision.configure({
apiKey: 'YOUR_API_KEY',
endpoint: 'https://app.advision360.de',
})