cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Not applicable

How can I create an Exchange Online calendar item for all Office 365 users?

I am new to Nintex workflow, so please don't assume I know the basics.  I would like to create a workflow that will insert multiple holiday calendar items on all user Exchange Online calendars.  Could someone point me in the right direction?

Labels: (1)
0 Kudos
Reply
7 Replies
Highlighted
Nintex Newbie

Re: How can I create an Exchange Online calendar item for all Office 365 users?

0 Kudos
Reply
Highlighted
Automation Master
Automation Master

Re: How can I create an Exchange Online calendar item for all Office 365 users?

Hey, no problem. There are several Exchange specific actions that you can review here in the online documentation http://help.nintex.com/en-US/O365/Default.htm#O365WorkFlow/Workflow Actions - INT/Exchange Online.ht...

Those actions are

Exchange Online cancel calendar item

Exchange Online create calendar item

Exchange Online create task

Exchange Online delete task

Exchange Online get meeting suggestions

Exchange Online retrieve calendar items

Exchange Online retrieve tasks

Exchange Online update calendar item

Exchange Online update task

Check and see if the create calendar item will do what you are looking for.

0 Kudos
Reply
Highlighted
Not applicable

Re: How can I create an Exchange Online calendar item for all Office 365 users?

Andrew,

Yes, I know I want to use Exchange Online create calendar item.  However, because I'm very new to Nintex, I'm looking for some guidance on how to do the following:

Create a calendar item on each user's personal calendar

Apply the workflow to all existing and new Office 365 users

Thank you . . .

0 Kudos
Reply
Highlighted
Automation Master
Automation Master

Re: How can I create an Exchange Online calendar item for all Office 365 users?

That's actually a good question as you need the ability to loop through all of the users in the tenant. The only way I have done that was using PowerShell. I'm not sure if there is a tenant level action in Nintex to get that information. I'll ask around Mike MEric HarrisCaroline JungChristophe RaucqDan Stoll

0 Kudos
Reply
Highlighted
Nintex Newbie

Re: How can I create an Exchange Online calendar item for all Office 365 users?

At the moment their isn't a specific tenant level action available to do that level for looping through all the users.  However after thinking about it, I don't think you would have to actually do that to achieve what you want. 

Why not use the create calendar item, and select the "all users" group or whatever AD group you want to create the item for.  This should create an invitation for a calendar event as though your were in Outlook doing that from the calendar settings and send out invitations.

0 Kudos
Reply
Highlighted
Automation Master
Automation Master

Re: How can I create an Exchange Online calendar item for all Office 365 users?

Performing the following web request (using "Web Request" action - GET method) will give you all the SharePoint users (including the external users) :

https://<domain>.sharepoint.com/_api/web/siteusers

In the response (in the Web Request action you can store the response in a variable using the "Store response content in" field) there is the property IsShareByEmailGuestUser for each user. If the property is set to true, then it is an external user. So you can use the Query XML action using the following XPath query :

//*[local-name()='properties']/*[local-name()='IsShareByEmailGuestUser' and .='false']/../*[local-name()='Email']

You can maybe get all the users email address like this (just check if there is all the users) and then for each user, create the calendar items.

To apply the workflow to new users, you will have to regularly execute the workflow. For the moment, you can't Schedule site workflows in O365, so an alternative would maybe be to perform a loop. In this loop you can get all the users, create the calendar items for all the users and then add a pause for 1 day for example so that the calendar items will be added every day (you should maybe check if the calendar items have already been added for the each user before adding them using the retrieve calendar items action).

I know, it's not an easy workflow, but there's nothing out of the box the get all the users in a tenant.

Hope this helps

0 Kudos
Reply
Highlighted
Not applicable

Re: How can I create an Exchange Online calendar item for all Office 365 users?

Hi, Aaron Sprague​! If you have a solution, please mark the "correct answer" above, as it's helpful to others searching the community for correct answers. If you're still working, keep us posted! Thank you!

0 Kudos
Reply