> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://support.robaws.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# API - Kunden/Leads aus einem Website-Formular erstellen

Du möchtest, dass ein Website-Formular automatisch einen neuen Kunden oder Lead in Robaws erstellt?

Dann kannst du dein Formular per **Webhook** mit der Robaws API verbinden.

Das funktioniert zum Beispiel mit **Fluent Forms**, **WPForms** oder jedem anderen Formular-Tool, das Webhooks unterstützt.

In diesem Artikel zeigen wir dir:
* was du dafür brauchst
* wie die Verbindung technisch funktioniert
* wie du den Webhook einrichtest
* wie du prüfst, ob die Daten korrekt in Robaws ankommen
---


## Wie funktioniert das grundsätzlich?

Sobald jemand dein Formular auf der Website absendet, sendet das Formular die Daten an die Robaws API.

Dabei passiert technisch Folgendes:

1. Dein Formular sendet einen `POST`-Request an Robaws.
2. Der Request enthält die Formulardaten im **JSON-Format**.
3. Robaws prüft, ob der Request mit einem gültigen **API Key** und **Secret** authentifiziert wurde.
4. Wenn alles korrekt ist, wird in Robaws ein neuer Kunde oder Lead erstellt.

Du musst dafür also kein eigenes Plugin bauen.
Ein Webhook reicht in vielen Fällen aus.
---


## Voraussetzungen

Bevor du startest, brauchst du:

* einen [Robaws API-Zugang](/de/article/api-was-ist-http-basic-authorization-1lih35g/)
* einen **API-Key**
* ein **API-Secret**
* ein Formular mit Webhook-Funktion

**Gut zu wissen:**
Robaws verwendet für diese Anbindung **HTTP Basic Authentication** mit einem **API Key** und einem **Secret**.
Du arbeitest also **nicht** mit Benutzername und Passwort.

Mehr dazu findest du hier: [Was ist HTTP Basic Authentication?](https://support.robaws.com/de/article/api-was-ist-http-basic-authorization-1lih35g/)
---

## Was du in deinem Formular eintragen musst

Damit dein Formular Daten an Robaws senden kann, brauchst du vier Dinge:

* die richtige **Request URL**
* die richtige **Request Method**
* die passenden **Header**
* einen **JSON-Body** mit deinen Formularfeldern
---


## Schritt 1: API Key und Secret vorbereiten

*Mehr erfahren:&#32;[Robaws API Key und Secret erstellen](https://support.robaws.com/de/article/api-zugriff-fur-einen-benutzer-aktivieren-lptz83/)


Für die Authentifizierung musst du deinen **API Key** und dein **Secret** in diesem Format zusammensetzen:

`key:secret`



**Beispiel Eingabe**
`my-api-key:my-api-secret`

Diesen Wert musst du anschließend in **Base64** codieren.


**Beispiel im Terminal**
```
echo -n "my-api-key:my-api-secret" | base64
```


**Beispiel-Ergebnis**
```
bXktYXBpLWtleTpteS1hcGktc2VjcmV0
```

---


## Schritt 2: Webhook im Formular einrichten

In diesem Schritt richtest du dein Formular so ein, dass es die eingegebenen Daten an Robaws sendet.

Das Beispiel unten basiert auf **Fluent Forms** in WordPress.
In anderen Formular-Tools wie **WPForms** funktioniert es sehr ähnlich.


### **1. Formular öffnen**

1. Melde dich im WordPress-Adminbereich an.
2. Gehe zu **Fluent Forms** > **Alle Formulare**.
3. Öffne das Formular, das du mit Robaws verbinden möchtest, oder erstelle ein neues Formular.


### **2. Webhook hinzufügen**

1. Öffne im Formular den Bereich **Integrationen**.
2. Wähle **Webhook** aus der Liste der verfügbaren Integrationen.
3. Klicke auf **Neue Webhook hinzufügen** oder **Add Webhook**.


### **3. Grundeinstellungen eintragen**

Trage nun die Basisdaten für den Webhook ein.

**Name**
Vergib einen eindeutigen Namen, zum Beispiel: `Robaws API Integration`

**Request URL**
Hier trägst du den Robaws-Endpunkt ein, an den die Formulardaten gesendet werden: `https://app.robaws.be/api/v2/clients`

**Request Method**
Wähle: `POST`

**Format**
Wähle: `JSON`


### **4. Header hinzufügen**

Damit Robaws die Anfrage korrekt verarbeiten und authentifizieren kann, musst du zwei Header hinzufügen.


**Header 1**

**Name:** `Content-Type`
**Wert:** `application/json`

Dieser Header sagt Robaws, dass die Daten im JSON-Format gesendet werden.


**Header 2**

**Name:** `Authorization`
**Wert:** `Basic DEIN_BASE64_WERT`

Ersetze `DEIN_BASE64_WERT` durch den Base64-codierten Wert aus deinem `key:secret`.


**Beispiel:**

`Authorization: Basic bXktYXBpLWtleTpteS1hcGktc2VjcmV0`


### 5. Body eintragen

Im Body legst du fest, welche Formularfelder an Robaws übertragen werden.

Verwende dafür zum Beispiel dieses JSON:

```json
{
  "name": "{field_name}",
  "email": "{field_email}",
  "phone": "{field_phone}",
  "address": "{field_address}",
  "extraFields": {
  "Quelle": {
    "stringValue": "{field_quelle}"
    }
  }
}
```


### 6. Platzhalter anpassen

Die Werte wie `{field_name}` oder `{field_email}` sind Platzhalter aus deinem Formular.

Du musst diese durch die tatsächlichen Platzhalter deiner Formularfelder ersetzen.

**Beispiel:**

```
{
  "name": "{name}",
  "email": "{email}",
  "phone": "{phone}",
  "address": "{address}",
  "extraFields": {
    "Quelle": {
      "stringValue": "{quelle}"
    }
  }
}
```

**Tipp:** In Fluent Forms findest du die Platzhalter direkt am jeweiligen Feld im Formular-Editor.


### 7. (Optional) Conditional Logic verwenden

Du kannst zusätzlich festlegen, dass der Webhook nur unter bestimmten Bedingungen ausgelöst wird.

Das ist zum Beispiel sinnvoll, wenn du den Webhook nur bei bestimmten Formularauswahlen senden möchtest.

Wenn der Webhook immer ausgeführt werden soll, kannst du diesen Bereich leer lassen.


### 8. Webhook speichern

Nachdem du alle Einstellungen eingetragen hast, klicke auf **Speichern** oder **Save**.

Dein Formular ist jetzt so eingerichtet, dass es die Daten beim Absenden an Robaws senden kann.
---



## Schritt 3: Integration testen

Sobald der Webhook gespeichert ist, solltest du ihn direkt testen.

### So gehst du vor

1. Öffne das Formular auf deiner Website.
2. Fülle es mit Testdaten aus.
3. Sende das Formular ab.
4. Prüfe in Robaws, ob ein neuer Kunde oder Lead erstellt wurde.

Wenn dein Formular-Tool Logs für Webhooks anbietet, solltest du diese ebenfalls prüfen.
---



## Fehlerbehebung

Wird kein neuer Eintrag in Robaws erstellt, prüfe zuerst diese Punkte:


### 1. Ist die Request URL korrekt?

Der Endpoint für dieses Beispiel ist: https://app.robaws.be/api/v2/clients


### 2. Ist die Methode auf `POST` gesetzt?

Ohne `POST` wird kein neuer Datensatz erstellt.


### 3. Ist der `Authorization`-Header korrekt?

Typische Fehler sind:

* falscher Base64-Wert
* `key:secret` wurde nicht korrekt zusammengesetzt
* `Basic` im Header fehlt


### 4. Ist `Content-Type: application/json` gesetzt?

Ohne diesen Header kann Robaws den Request möglicherweise nicht korrekt verarbeiten.

### 5. Stimmen die Feld-Platzhalter?

Wenn Werte leer in Robaws ankommen, liegt das meistens daran, dass die Platzhalter im Formular nicht korrekt eingetragen wurden.


### 6. Ist der JSON-Body gültig?

Achte auf:

* korrekte Klammern
* richtige Anführungszeichen
* keine fehlenden Kommata
---



## Beispielhafte Webhook-Konfiguration:

Angenommen, Ihr Formular hat folgende Felder:

* **Name:** `{name}`
* **E-Mail:** `{email}`
* **Telefon:** `{phone}`
* **Adresse:** `{address}`
* **Quelle:** `{quelle}`

Und Ihre Base64-codierten Anmeldedaten sind `dXNlckBleGFtcGxlLmNvbTpzZWN1cmVwYXNzd29yZA==`.

**Webhook Einstellungen:**

* **Name:** `Robaws API Integration`
* **Request URL:** https://app.robaws.be/api/v2/clients
* **Request Method:** `POST`
* **Format:** `JSON`
* **Headers:**
    
```less
    Content-Type: application/json
    Authorization: Basic dXNlckBleGFtcGxlLmNvbTpzZWN1cmVwYXNzd29yZA==
```
    
* **Body:**
    
```json
    {
      "name": "{name}",
      "email": "{email}",
      "phone": "{phone}",
      "address": "{address}",
      "extraFields": {
        "Quelle": {
          "stringValue": "{quelle}"
        }
      }
    }
```
    

---



## Sicherheit

Behandle deinen API Key und dein Secret immer vertraulich.

Beachte außerdem:

* verwende immer HTTPS
* teile API-Zugangsdaten nicht öffentlich
* nutze nach Möglichkeit einen separaten API-Benutzer nur für diese Integration
* vergib nur die Rechte, die wirklich benötigt werden


**⚠️ Wichtig**

|| Base64 ist keine Verschlüsselung, sondern nur eine Kodierung.
Dein API Key und dein Secret müssen trotzdem wie sensible Zugangsdaten behandelt werden.
---


## Beispiel Videos


${youtube}[API Einstellungen - WPForms](xcyJqEDFCzg)


${youtube}[API Einstellungen - Fluent Forms](EnP17s6yeCM)
