> ## 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 - Aktualisierung von Informationen (PUT vs PATCH)

# Wann PUT oder PATCH verwenden?

Wenn Sie Daten aktualisieren, sollten Sie fast immer **PATCH** anstelle von **PUT** verwenden.

Hier ist der Grund:

* **PUT**: Ersetzt die gesamte Entität durch die übergebene Nutzlast. Das bedeutet, dass jede Eigenschaft überschrieben wird – selbst, wenn sie sich nicht geändert hat. *Dies ist umständlich bei großen Datensätzen mit vielen Eigenschaften.*

* **PATCH**: Hiermit können Sie nur die Eigenschaften aktualisieren, die geändert werden sollen. Das spart Zeit und Aufwand, besonders bei komplexen Entitäten.


### Zwei Varianten von PATCH: Json Merge Patch & Json Patch

1. **Json Merge Patch**: Dies ist die einfachere Methode. Sie übergeben nur die Eigenschaften, die Sie ändern möchten, und der Rest bleibt unverändert.

2. **Json Patch**: Etwas komplexer, aber leistungsfähiger. Mit Json Patch können Sie nicht nur Eigenschaften ersetzen, sondern auch neue Daten hinzufügen, löschen oder andere Operationen ausführen.

---


# Beispiele zur Verdeutlichung

## Json Merge Patch (einfache Methode)

Sie möchten z.B. nur den *Nachnamen* eines Mitarbeiters ändern:


**Method:** PATCH
**URL:** https://app.robaws.com/api/v2/employees/8
**Protocol Version:** HTTP/1.1
**Content-Type:** application/merge-patch+json
**Authorization:** Basic xxxxxxxxxx

```json
{
    "surname": "Van Robaeys"
}
```

In diesem Beispiel wird nur der Nachname aktualisiert. Alle anderen Felder (wie Vorname, Adresse, etc.) bleiben unverändert.

---

## Json Patch (erweiterte Methode)

Hier können Sie mehrere Operationen gleichzeitig ausführen.


z.B.

1. Den Nachnamen ändern.
2. Ein neues Zertifikat namens „Führerschein“ hinzufügen.


PATCH /api/v2/employees/8 HTTP/1.1
**Content-Type:** application/json-patch+json
**Authorization:** Basic xxxxxxxxxx

```json
[
    {
        "op": "replace",
        "path": "/surname",
        "value": "Van Robaeys"
    },
    {
        "op": "add",
        "path": "/otherCertificates",
        "value": "Führerschein"
    }
]
```

In diesem Beispiel wird nicht nur der Nachname geändert, sondern auch ein neues Zertifikat zur Liste hinzugefügt. Json Patch bietet Ihnen mehr Flexibilität, um mehrere Änderungen gleichzeitig durchzuführen.

---


# Zusammenfassung: Wann verwenden?


* **PUT**: Verwenden Sie es nur, wenn Sie die komplette Entität mit neuen Daten überschreiben möchten.

* **PATCH (Json Merge Patch)**: Verwenden Sie es, um einzelne Felder zu ändern, ohne die restlichen Daten zu beeinflussen.

* **PATCH (Json Patch)**: Verwenden Sie es, wenn Sie mehrere Änderungen vornehmen oder erweiterte Operationen (wie Hinzufügen oder Löschen von Feldern) durchführen möchten.