KIX - Forum

Community => Fragen | Konfiguration | Hilfe => Thema gestartet von: thomas.hohm am 26.06.2022 11:14:08

Titel: API: Kann die Erstellung per Post auch vorhandene Daten aktualisieren?
Beitrag von: thomas.hohm am 26.06.2022 11:14:08
Hallo,


kann die API bei einem Post, der neue Datensätze generiert, auch automatisch einen vorhandenen Datensatz aktualisieren?
Konkretes Beispiel: ich spiele per API und Post übder den Endpoint /contacts Kontakte ein. Dabei würde ich gerne vorhandene Kontakte aktualisieren und noch nicht vorhandene Kontakte erzeugen.


Ich habe in der Doku nicht gefunden, ob das so funktioniert und vor allem, in welchem Kontakt-Feld der Fremdschlüssel der Kontakte für die Überprüfung der Existenz abzulegen ist.


Danke!
Thomas
Titel: Re: API: Kann die Erstellung per Post auch vorhandene Daten aktualisieren?
Beitrag von: Marvin G. - FZJ am 27.06.2022 16:39:56
Hallo Thomas,


zum aktualisieren benötigst du "Patch".


Was nicht geht ist, einen Kontakt anzulegen mit einer Mailadresse, die bereits einem Kontakt gehört. Dann bekommst du nämlich folgende Meldung:

{
"Message": "Cannot create contact. Another contact with same email address already exists.",
"Code": "Object.AlreadyExists"
}



Dann könntest du z.B. nach der Mailadresse filtern und mit der dann ausgelesenen ID ein "Patch" machen. Es ist also ggf. ein wenig Programmierarbeit notwendig, um Ein und Ausgaben in bzw. aus Richtung API zu verarbeiten. 


Wenn du eine csv-Datei mit den Kontaktdaten auf dem Host hast, schau dir mal das hier an: https://github.com/cape-it/kix18sync 
Das ist vermutlich etwas einfacher.


Viele Grüße 
Marvin