Hallo,
Ich möchte Benutzer aus einer Liste von E-Mail-Adressen, die von einer anderen App stammen, abgleichen, um alle Benutzer zu einer Gruppe hinzuzufügen und Mitglieder zu entfernen, die nicht in der Liste enthalten sind. Ich habe ein Skript, das dies über die API erledigt.
Der Entfernungs-Teil ist einfach. Für jedes Mitglied extrahiere ich alle seine E-Mails mit:
get(/u/{username}/emails.json)
und ich versuche, jede einzelne gegen die Liste abzugleichen. Wenn keine vorhanden ist, wird das Mitglied ausgeschlossen.
Der Einschluss-Teil ist kniffliger. Für jede E-Mail-Adresse möchte ich sehen, ob es einen Benutzer mit dieser Adresse gibt. Wenn ja, füge ich ihn zur Gruppe hinzu. Wenn nicht, möchte ich keine Einladung senden. Ich verwende den Befehl:
get(/admin/users/list/all.json?email={email})
aber dieser Befehl gibt eine Liste von Benutzern zurück, die diese Adresse als primäre Adresse haben, und nicht diejenigen, die diese Adresse als sekundäre, unbestätigte E-Mails oder verknüpfte Konten haben. Gibt es eine Möglichkeit, von allen möglichen E-Mail-Adressen aus zu filtern, oder sollte ich die Liste aller Benutzer exportieren und dies manuell extern tun? Ich würde es lieber intern erledigen, damit weniger Datenlecks entstehen.
Danke!