I have a client who is evaluating Nintex Workflows (Ent) and Forms (Standard) for on premises to do the following:
1. Provision AD accounts that will create Office 365 accounts (they are using DirSync)
2. Assign Office 365 license
3. Provision an Exchange Online mailbox
4. Provision a OneDrive for Business
I do see in Nintex Live that there is the option for #2 but none for the others. I was looking for direction, recommendations, and/or suggestions if this can still be accomplish using web service call, PowerShell, etc.
Thanks in advance.
Check out Nintex Workflow Help File Excerpts (look here for user guide content) and go to the O365 link.http://help.nintex.com/en-US/O365/Default.htm
From this link you can see all the actions for workflows in O365. I will highlight just a few here, there are several more in these categories.
Office 365 add user to group
Office 365 add user to security group
Office 365 assign license
Office 365 create user
Office 365 Query User Profile
Office 365 remove user from security group
Office 365 reset password
Office 365 retrieve license plans
Office 365 user access management
OneDrive delete file
OneDrive download file
OneDrive query files
OneDrive upload file
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
You can assign a license to a user today. I don't see a native action that creates a net new one drive, or exchange account though you can work within those created accounts. But that is what is here today. It takes a lot of permissions to provision those accounts. Maybe that is on the horizon though.
Here is a strange idea. You can do this with PowerShell. So how do you interact with PowerShell? If you are Nintex On Premise then you can use a PowerShell action in a workflow to call a script that provisions these accounts.
If you are SharePoint Online, then a workflow can create a user record in a list based on approvals and other logic that would be within the workflow (creating email address, assign ID, assign manager, etc). Then a PowerShell script can run several times a day from a desktop/server, get the records that have not been processed from this list and then perform the provision process. Then update the record as complete so it is not performed again.