Over 100 pre-written scripts

Our script library has been developed over a number of years, based on feedback and requests from O365 administrators like you from around the world.   See some of the scripts in action on this page over here.

Screen shot of script library

Microsoft365 Scripts Included

Mailboxes

Finds any Inbox Rule to automatically delete incoming mail, and Removes them.

Finds any Mailboxes with a Rule to Forward mail, and Removes them.

Disables an Inbox Rule based on the Inbox Rule Identity, which can be obtained from the PowerScript GetInboxRules.ps1.

Disables the audit log for the given user.

Disables a Sweep Rule based on the Sweep Rule Identity, which can be obtained from the PowerScript GetSweepRules.ps1.

Enables an Inbox Rule based on the Inbox Rule Identity, which can be obtained from the PowerScript GetInboxRules.ps1.

Enables a Mailbox

Enables the audit log for the given user.

Enables a Remote Mailbox

Enables a Remote Mailbox

Enables a Shared Mailbox

Enables a Sweep Rule based on the Sweep Rule Identity, which can be obtained from the PowerScript GetSweepRules.ps1. If no errors, the script has executed successfully.

Retrieves detailed statistics on a Mailbox

Gets a list of all Mailbox Rules. The RuleIdentity of a Rule is useful when attempting to Enable/Disable that Rule.

Gets the status of the Junk Mail configuration for a mailbox.

Gets a list of all Sweep Rules

Gets the Exchange Mailbox Object and prints all the attributes. The Name of the mailbox is required.

Add an Alias to a Mailbox

Sets the Junk mail configuration for a given mailbox.

Sets the Email of a MailBox. Uses the SamAccountName as a unique key for the Mailbox.

Sets the DisplayName of a MailBox. Uses the SamAccountName as a unique key for the Mailbox.

Sets a user to have SendAs permission

Sets a user to have SendOnBehalfOf

Sets permissions of a User in to a SharedMailbox

Forces the Managed Folder Assistant to start on a Mailbox. In Verbose mode, the script will output for every user selected.

This lists all the meetings a user has scheduled.

This removes all meetings set up by the user.

Finds any Mailboxes with a Rule to automatically delete incoming mail.

Finds any Mailboxes with a Rule to Forward mail.

Groups

Add a single user to group

Creates a new Msol Group based on parameters of a source Group. Optional fields will use the source Group’s settings if left blank.

Finds all the groups user a is in and adds user b

Lists group details

Ascertains if an Msol group is nested in another group.

Creates a CSV file with details of a group

Updates a group details

Adds a User to a Group. Can also be supplied a CSV file. Output can be supressed for CSV files that are very large.

SharePoint (cloud)

GetAllSites

GetSiteLists

TestSite

GetSiteListCounts

GetSiteSharingRules

Teams

Adds users from a CSV file to a given team

Assigns a user to a team as a Member. Can Add user to multiple Teams by selecting multiple Teams.

Assigns a user to a team as an Owner. Can Add user to multiple Teams by selecting multiple Teams.

Changes a user’s Team status from Owner to Member

Lists all the channels in a team

Lists all the settings for a team

Gets the users inside a team

Lists all the channels in a team

Changes a user’s Team status from Member to Owner

Completely removes a user from a team. (Both Members and Owners lists)

Lists differences between two users Team membership.

Creates a new team using the parameters provided

Deletes a Team, with a confirmation. (Can take up to 8 hours to fully delete through PowerShell)

Assigns a user to all the teams another user is in. For instance to add Wes to all the teams that Alan is in, enter Alan as the UserToClone and Wes as the UserToAdd. Enter the name as UPN or other unique identifier.

Creates a new team based on the parameters provided.

Removes a specific user from the Members list

Removes a specific user from the Owners list

Removes a user from all Teams they are in

A script to check the activity of Microsoft 365 Groups and Teams and report the groups and teams that might be deleted because they’re not used.

CompareUserTeams

CreateTeam

DeleteTeam

DuplicateUsersTeams

NewTeam

RemoveTeamMember

RemoveTeamOwner

RemoveUserAllTeams

Teams Activity Report

Users

Reset User Password

DuplicateTeamMembership

CopyOneDriveContent

AssignLicenseToUser

AssignRoleToUser

BlockUserAccess

DisableMFA

EnableMFA

GetLicenses

RemoveLicenseFromUser

UnblockUserAccess

UpdateUserSettings

Rooms & Resources

DisableAutoAcceptRoomsResources

EnableAutoAcceptRoomsResources

GetRoomInfo

GetRoomUsage

RoomPreparer

Other

Copy all the OneDrive files from one user to another (good for terminations)

Get the uptime of a specific VM

Starts the specified Virtual Machine

Stops the specified Virtual Machine

Starts the specified Web Application

Stops the specified Web Application

We have a similar set of scripts for on-premise Exchange and SharePoint, but figured this page was already too big. Got a question about any of our scripts? Just ask.