Hall zusammen, ich schreibe gerade für meine Auftragsverwaltung und Buchhaltung einen Daten-Export über die REST-API. Jetzt komme ich gerade nach vielen Versuchen auf den Verdacht, dass der addresses-Endpunkt keine Suche unterstützt?Dokumentiert ist jedenfalls keine Suchmöglichkeit, aber ich dachte erst, dass das ein Fehler wäre. Konkret wäre die eigentlich triviale Anforderung, für neue oder geänderte Kunden die zugehörigen Adressen zu ermitteln und abzurufen. Ohne Such- oder Filtermöglichkeit müsste ich dazu aber immer die wirklich gesamte Liste aller Adressen abrufen, um dann lokal eine Suche auszuführen und mir die wenigen herauszupicken, die ich wirklich brauche. Hatte schonmal jemand diesen Anwendungsfall und wenn ja, wie habt Ihr in gelöst? Viele Grüße, Ben (Ich hab dazu übrigens parallel schonmal ein Ticket angelegt)
@Topas79 Wenn du die API v2 benutzt, kannst du den Parameter changed benutzen um alle Kunde zu erhalten, die ab dem Datum geändert wurden. Beispiel: Code: /api.php/v2/customers?changed=2023-12-01%2015:59:01 Liefert alle Kunden die seit dem 01.12.2023 um 15:59:01 geändert worden oder neu sind. Dort kannst du dann unter "_links" die Adresse von den Kunden dann abrufen.
@Till (Gambio) Hi Till, danke für die Antwort! Soweit war ich schon, darüber komme ich an die "Haupt"-Adresse und Adress-ID der Kundenadresse. Aber nicht an die Liefer- und/oder Rechnungsadressen. Die werden natürlich auch im Auftrag geliefert, aber halt ohne ID. Wenn ich die wissen will, bleibt nach meinem aktuellen Stand nur, alle Adressen abzurufen und dort dann die Lieferadresse zu finden zu versuchen. Eine vermutlich wirklich kosten- und aufwandsgünstige Lösung wäre hier doch, wenn die API im Auftrag zu den Adressdaten einfach auch noch die ID der jeweiligen Adresse zurückliefern würde.
Die ID der Adresse in den Bestelldaten ist nicht vorhanden weil die Adresse dort nicht referenziert wird, sondern direkt gespeichert wird, da unabhängig von den Kunden diese Infos in den Bestellungen vorliegen müssen. Wenn nämlich eine Adresse bzw. ein Kunde dessen Adresse sich ändert, dann muss diese zum Zeitpunkt der Bestellung sich nicht ändern auch nicht nachträglich, da zum Zeitpunkt der Bestellung die Adresse ja eine andere war. Die Daten für die Bestellungen sind also unabhängig von den Daten des Kunden erfasst und somit nicht verknüpft.