for SharePoint Online
This Azure Active Directory to list WebPart creates a copy of your Acitve Directory Users into a hidden SharePoint list to be consumed by other WebParts for better user experience.
Select all the fields to sync from the User Profile Store into the hidden list.
By clicking the "Configure Fields" button in edit mode, all available fields will pop up in a dialog promt.
Select/deselect the fields with your cursor.
By enabling the auro update function, the WebPart will start automatically processing the accounts and update the list items with new values.
With a task schedule and an account having permission to, it is possible to target this configured site page and update the list each day.
The internal cache retention time is set to 1400 minutes (23 hours, 20minutes), which allows a complete update each day.
But the WebPart will finally only update the list items/fields if the values are not matching the current/new value.
Notes: Please approve the additional permissions in your admin panel.
To have list items available in the list not beeing deleted by the application, please add a list field called "Sealed" from type "Yes/No" (checkbox) and set the value to Yes for the specific items.
Property Name | Description |
|---|---|
Main | |
Select another list manually | If enabled, a present custom list can be selected (optional) |
Site URL | Set the full site URL and hit apply to get the available lists loaded into the property List Name (optional) |
List Name | Choose an available list from the dropdown to work with. (optional) |
FieldTemplate | by clicking the "Configure Fields" button in edit mode, a dialog prompt will pop up offering all the available fields to configure by selecting/deselecting with your curor. |
Request Filter | Allows to filter the received accounts from AAD like: Department eq 'IT' |
Exclusion Filter | Syntax: user['FieldName'] Operator Value. Example: user['SPS-HideFromAddressLists'] == "True" This example will remove all users from the list where the SPS-HideFromAddressLists is set to True (disabled users) Combined example: user['SPS-HideFromAddressLists'] == "True" || user['Department'] == "" This example will do the same as above but in addition, this condition will also remove users from the list, where the Department is empty. |
Nbr. of profiles to process | Specify to maximal profile count to process (optional). |
Options | - |
Update Manager PreferredName field | An additional field will be created and updated with the managers preferredName. If the fields "Manager" and "PreferredName" is not configured, the WebPart will automatically add these fields to the field template. |
Auto update enabled | Will start the application to update the list after a dialog promt (10 seconds) |
Close Browser after update | Will close the current tab if the update process completed successfully. |
| Neil Feb 22, 2022, 10:25 PM |
I am trying to use this web part to populate user list so we can use that for directory in one of your directory webpart. But this script stucks at 13644 - it is not able to reach all user profile it seems. "Loading ProfileData for each Profile: 27279 - 13644" Any help would appreciate. Thank you |
| Raphael Feb 24, 2022, 11:55 PM |
Neil, thank you for the remote session to look into this issue. We have updated the WebPart with a fix for the unresolved account. Please update to the most recent version and try again. |
| Corey Feb 25, 2022, 11:57 PM |
Could this be used with the Birthday Reminder web part (non list version, pulls from the sharepoint user store). |
| Raphael Feb 28, 2022, 8:12 PM |
Corey, we have planned to implement this list functionality also into both of our Birthday Reminder WebParts. It will be available soon. |
| Corey Mar 25, 2022, 12:56 AM |
Do you know when this functionality will be implemented? I know we would benefit greatly from this |
| christophe Mar 25, 2022, 9:07 PM |
What is the most likely issue when "load accounts by AAD" give the message "loading UserPrincipalName from Azure Active Directory", but nothing move on (no counts of users or else)? Any advise? Thanks in advance |
| Raphael Mar 25, 2022, 9:09 PM |
Christophe, in this case, the WebPart permission is most likely not approved in the Admin center. Sometimes it takes a couple of minutes until the additional permission is applied to the WebPart. |
| christophe Mar 25, 2022, 9:24 PM |
Thanks for the quick answer. Is there any particular place in admin center where I can check or force permission? I suppose you meant Azure Active Directory admin center? Cheers, |
| christophe Mar 25, 2022, 9:35 PM |
Sorry, I have now approved them in SharePoint admin center/Advanced/API access. It's all fine! Christophe |
| Raphael Mar 27, 2022, 2:34 AM |
Corey, we have the birthday reminder WebPart updated within the next two weeks. |
| Raphael Mar 30, 2022, 9:52 PM |
Corey, we have updated the Birthday Reminder (UPS) WebPart and implemented the hidden list to consume. Please update to the most recent version. |
| David Aug 31, 2022, 5:26 PM |
I have installed the web part and added the permissions. Nothing happens when I click on Configure Fields in edit mode. Am I missing something? |
| Raphael Aug 31, 2022, 9:09 PM |
David, please update to the most recent version. Our dev team has implemented a fallback function if the current user email can not be parsed to a valid UserPrincipalName. Thank you. |
| Mansi Sep 21, 2022, 11:49 PM |
I am trying to use this web part to populate user list, but on clicking Load Accounts from AAD, it is not showing me the number of users to be loaded from AAD. In my case, there are 531 users. |
| Raphael Sep 22, 2022, 12:10 AM |
Mansi, Please verify that the additional required permissions have been approved for this WebPart. You can find the pending permission request here: Admin Center -> SharePoint -> Advanced -> API access -> Pending requests. Sometimes it takes a while until the additional permissions have been applied. Please let me know by email if there are still issues so we can schedule a short screen-sharing session. |
| Arianna Oct 10, 2022, 8:44 PM |
Hello, Would this also work for to sync information from Microsoft Dynamics SL to a Sharepoint list? Thanks! |
| Raphael Oct 17, 2022, 2:13 PM |
Arianna, If your company sync Active Directory to Azure Active Directory, it would also work, yes. |
| Alex Oct 23, 2022, 3:38 AM |
Hello Bloch Engineering, This app looks really great. I have downloaded the free webpart & have the ZIP. Do you have any instructions on how to install this on a tenant? Such as where do we upload and the ZIP & any other instructions we need? Thank you |
| Raphael Oct 25, 2022, 1:43 AM |
Alex, you can find some default instructions on how to get the WebPart within our small FAQ. Here is also a small PDF document about the general installation process of an SPFx WebPart. Please note that this AADUsers2List WebPart requires additional permission approved within your admin center to read the account information from your Azure Active Directory. |
| Paul Nov 11, 2022, 5:06 PM |
Hi Bloch Engineering, Could you help me please: 1) Why are users with the Guest status in AAD loaded into a list EmployeesImport with empty fields? 2) And what time, after adding a user to AAD, will he auto-update in this list? Could this time be changed somehow? Thank you! |
| Raphael Nov 23, 2022, 9:50 PM |
Paul, 1) the mechanism of the WebPart requires the users to have a UserProfile with values within your UserProfileStore application on SharePoint Online. Please verify if the certain Guest account does have a UserProfile. 2) the WebPart cache will last for 23 hours and 20 minutes. After that time, the WebPart will load fresh data from AAD and UserProfileStore. This cache time can not be changed in the current version of the WebPart. |
| Kurt Dec 22, 2022, 9:02 PM |
Hi, Thank you for your Work I installed the app but when I add it it tells my to create the Hidden Employee list, I hit OK, but this comes up again and againg. What do I have to set up in addtions to make this work? Thanks |
| Till Dec 29, 2022, 12:40 AM |
Hi man, Like your WebPart! It seems it is not able to exclude the "AccountEnabled" attribute, is that possible? And for some reason it does not create the ManagerPreferedName field for me. Tried deactivating and activating the option, but does not seem to help. Any advice? |
| Raphael Dec 29, 2022, 1:02 AM |
Kurt, I can think of two possible situations the WebPart is not able to create the hidden EmployeesImport list. 1) if your account does not have permission to create the list in the RootSiteCollection, or a corrupt list fragment is still existing (Please try to directly navigate to the list by the following Url: https://contoso.sharepoint.com/Lists/EmployeesImport) 2) if the requested permission has not been approved within the Admin Center -> SharePoint -> Advanced -> API access |
| Kassie Jan 6, 2023, 8:52 PM |
Hi, I'm in need of a solution to create sharepoint items based on every domain users in AD. (we want o exclude any guest account) When we click sync, will this create a sharepoint item for new starters and delete employees that have left the organisation? Also can I add more fields to the sharepoint list so that's it's useable? (update information based on the users) Or will all the information be erased as soon as I click on sync? |
| Raphael Jan 6, 2023, 9:01 PM |
Kassie, Yes, the WebPart deletes all the list items where AAD did not load the UserPrincipalName, but is available in the list. And if an account was added to AAD, the WebPart will add this newly added account to the list. It is also possible to extend the list with any custom fields. The WebPart will not touch the additional fields. |
| Raphael Jan 6, 2023, 9:08 PM |
Till, we have updated the WebPart and fixed the ManagerPreferredName function. Please update to the most recent version and try again. Yes, the WebPart is loading all accounts regardless of the "SPS-HideFromAddressLists - True" field/flag. After syncing, you can create a list view to exclude all the disabled accounts. In a further version, we will look into a WebPart property to let users prevent the application from syncing disabled accounts. |
| Kassie Jan 6, 2023, 10:59 PM |
Thanks for getting back to me Raphael. That's great. |
| kassie Jan 10, 2023, 12:50 AM |
Can I only confirm that these information is safe and not readable or transferred to you in anyway? |
| Raphael Jan 10, 2023, 12:59 AM |
Kassie, Yes, I can fully confirm that our products and services (also this Azure Active Directory Users to List WebPart) do not send any data outside of your domain and there are no data transmitted to us in any way. Your data could be stolen only if your computer running the WebPart is infected. Kind regards, Raphael Meng |
| Kassie Jan 10, 2023, 10:03 PM |
Fantastic thank you! I've just tried it but it's only picking up 1998 users. We've got a lot more than that. |
| Raphael Jan 19, 2023, 4:35 PM |
Kassie, can you try again to load the users by clicking the button: "Load accounts by AAD"? The WebPart will call 999 accounts for each request and should go further. We also do have a bit more than 4000 accounts and all of them will be loaded. If there is still an issue, please get in contact with us by email, so we can schedule a screen-sharing session to look into this directly on your computer. |
| Kassie Mar 2, 2023, 10:18 PM |
Hi Raphael, We've got about 14800 users, and it's at the moment stuck on 7000+. The number is continue to increase but at a very slow rate. Either way, are we able to schedule a meeting for sometime next week to have a look at this? |
| Raphael Mar 3, 2023, 11:33 PM |
Hello Kassie, we have updated the WebPart and removed all the console outputs. I think this will finally overflood your memory with that many items to update. Please update to the most recent version and try again. If this is not working as expected, we can schedule a screen-sharing session to discuss that case. |
| Dave Mar 29, 2023, 3:36 AM |
Hi Raphael, When clicking the "Configure Fields" button in edit mode nothing happens. Would this be a permission issue with my account? |
| Dave Mar 29, 2023, 3:57 AM |
Hi Rapael, One other question. Is it possible to retrieve custom values like these extension values? "onPremisesExtensionAttributes": { "extensionAttribute1": null, "extensionAttribute2": "04/09", "extensionAttribute3": "08/14/2017", "extensionAttribute4": "213", "extensionAttribute5": "10005344", "extensionAttribute6": null, "extensionAttribute7": null, |
| Raphael Mar 29, 2023, 11:48 PM |
David, The AADUsersToList WebPart initially gets the accounts (UPN) from AAD but then loads the profiles and all the available fields from the SPO UserProfileStore. So, to get your extension attribute values synced, the field/value needs to be present within the UserProfile store. This needs to be done by a PowerShell Script. Here is a thread about that process: Link microsoft Link tatvasoft |
| Christopher Mann May 4, 2023, 9:26 PM |
Updates seem not to be pulling updated info from Azure AD. Our SPS-Birthday field has been changed on a user and over the last three days, it has not updated the changes in AD to that field. Keeps using the old value |
| John Jun 4, 2023, 7:27 AM |
For some reason all the entries in "hideadresslist" returns False... even for those accounts that are disabled. We are syncing with local AD though... Any advice? |
| Raphael Jun 24, 2023, 1:52 AM |
John, the Azure Active Directory Users to List WebParts is holding the accounts in a cache for approximately 23 hours and 40 minutes. So, if the sync from your AD to Azure AD is made within that cache time, the WebPart can not recognize it. Also, the internal mechanism is the following: The accounts (UPN) will be loaded directly from Azure Active Directory, while the properties for all the accounts are loaded from the User Profile Store (this data is cached for ~23h 40m). That way, the WebPart can read all available details about the users. I can imagine, that in your environment the sync from Azure Active Directory to the User Profile is not working properly. So, if the SPS-HideFromAddressLists is not updating correctly after two days, I do recommend getting your AAD to UPS sync fixed. |
| Raphael Jun 24, 2023, 1:53 AM |
Christopher, Have you checked the user's birthday property in the User Profile Store if that value is up to date? |
| Dave Jul 26, 2023, 12:14 AM |
The List Name dropdown will not populate for me, is there a certain thing it is looking for. I recently tried adding a new document library and switching the content type to Photos. |
| Raphael Jul 26, 2023, 1:18 AM |
Dave, Please try to add a picture library. The WebPart is looking for picture libraries. If there should be any picture libraries available, please try to change any property and hit apply, so the WebPart tries once more to get the current libraries loaded. |
| Amina Jan 17, 2024, 1:35 AM |
Thank you very much, that's so helpfull! i have one issue is that it doesn't load manager prefered Name and i get the i:0#.f|membership. please help !! |
| Jonathan Winter Jan 23, 2024, 10:46 PM |
So, if I understand the description for the auto update option, there needs to be a call to the site URL from a scheduled task to initiate the auto update? If so, can Opswise be used to do this versus a Windows Task Scheduler entry? Or am I misunderstanding the auto update option? Will it simply update on its own or dose a web call have to initiate the "automatic" part? |
| Raphael Jan 23, 2024, 11:13 PM |
Jonathan, The scheduled task needs to open a browser rendering the WebPart. Any other solution opening a browser linked to the WebPart'Url will work, as long as the WebPart can render and connect to the API's. The WebPart will automatically close the browser if the WebPart has finished the update process if the property "Close Browser after update" is enabled. |
| Raphael Jan 23, 2024, 11:14 PM |
Amina, I have opened an internal ticket and will get back to you by email. Thank you. |
| Raphael Feb 13, 2024, 4:50 PM |
Amina, to get the Manager name synced, please verify you have the following settings enabled: -"Update Manager PreferredName Field" property should be enabled -Necessary Fields to sync: PreferredName and AccountName |
| user Mar 14, 2024, 11:46 AM |
Hiredate is not getting data |
| Raphael Mar 14, 2024, 3:30 PM |
user, Please check the following:
|
| Jonthan Winter Aug 19, 2024, 10:38 PM |
Occasionally, I get the following error while the list items are updating, and the process stops: "Error in List Item update!" I refresh the page to start the process over and for the most part, it will finish successfully. How do I see what the problem is and/or how do I avoid this is the future? |
| Raphael Aug 19, 2024, 11:17 PM |
Jonathan, The detailed error message is displayed in the browsers console. If you have your browsers console open (F12) please open the console tab. You can see additional details outlined in red. Please send us these details. |
| Ralph Nov 6, 2024, 8:19 AM |
Hello- I am not seeing any images copied from AAD to the list, I didn't follow the above comment about using a picture library. Can you please explain if this is a supported scenario? |
| Raphael Nov 6, 2024, 9:50 PM |
Hi Ralph, If you are using the Employee Directory (UPS) version linked to that hidden Emploeeyslist, please check the following steps to have a picture displayed: |
| paul martin May 9, 2025, 4:29 AM |
I installed the app but when I add it it tells my to create the Hidden Employee list, I hit OK, but this comes up again and againg. What do I have to set up in addtions to make this work? Can I create my own list and what field need to be there?? Thanks |
| Raphael May 9, 2025, 2:18 PM |
Paul, Yes, you can use a custom list you have created. Please select the property "Select another list manually" and type in your Site URL (not site page) and hit apply to get the dropdown field loaded with all available lists to select. The WebPart will create the fields automatically by clicking the button "Create list fields". Please note that the additional permission requested in your admin center needs to be approved |
| Nitin Aug 30, 2025, 1:00 PM |
Hi, I do not see some files populated when I click "Configure Fields" Employee ID is not available. Could you please suggest? Thanks |
| Raphael Sep 3, 2025, 2:30 PM |
Hello Nitin, The WebPart can list and consume all available fields in your UserProfileStore. IF the Emplyoee ID is not present, plaese make sure the field is created in your UserProfileStore. Admin Center -> SharePoint -> More Features -> User Profiles -> Manage User Profile Properties. |