(Meine Frage bezieht sich auf die eingebauten APIs, nicht den Aufruf von externen APIs.)
Ich möchte über eine API per POST Datensätze in einer Relation anlegen. Diese Relation hat als ein Attribut einen Verweis auf eine andere Relation.
Beispiel: Aufträge und Kunden
Ich möchte Aufträge posten. Der Verweis des Auftrags auf den Kunden soll natürlich gesetzt werden. Dem API-Aufruf kann ich die Kundennummer mitgeben (eindeutiges Attribut beim Kunden).
Der API-Editor liefert mir als Beispiel für den POST-Request folgende Struktur:
{
"0(auftrag)": {
"diverse": "ABC",
"daten": "ABC",
"zum": 123,
"auftrag": "ABC"
},
"1(kunde)": {
"kundennr": "1001"
}
}
Der Auftrag wird angelegt. Jedoch bleibt der Verweis auf den Kunden im Auftrag leer. Der Benutzer hat Lese- und Schreibberechtigungen auf die API und alle relevanten Relationen.
Im Gegensatz zur Beispiel-API in der Ticket-App kann ich nicht die ID des Kunden liefern, sondern nur eben eine Kundennummer (ein Schlüssel aus dem Fremdsystem).
Kann das so etwa gar nicht funktionieren? Müsste ich zuerst die ID des Kunden beschaffen?
Das führt mich auch schon zur Folge-Frage:
Ich kann über eine GET-API beliebige Datensätze einer Relation lesen. Einzeln aber nur, wenn ich die ID kenne - also den konkreten Primärschlüssel der Relation. Wenn ich für eine Relation jetzt aber nur einen "Fremdsystem-Schlüssel" habe (s.o.): wie komme ich dann an den Datensatz?
Danke, Oli