Logo

Documentation home for Transend tools

Update-M365SharedMailboxes

SYNOPSIS

Updates shared mailboxes in a Microsoft 365 tenant.

SYNTAX

Action

Update-M365SharedMailboxes -ConfigNode <String> -Csv <String> [-TranslationCsv <String>] [-IgnoreErrors]
 [-SkipValidation] [-ValidateOnly] [<CommonParameters>]

Help

Update-M365SharedMailboxes [-ShowPrereqs] [<CommonParameters>]

DESCRIPTION

Use the Update-M365SharedMailboxes cmdlet to update shared mailboxes in a Microsoft 365 tenant.

EXAMPLES

Example 1: Validation only

Description

This example validates all data for the shared mailboxes in the shared_mailboxes.csv file but does not perform the update. This is a recommended first step so any warnings can be addressed prior to update.

Tenant configuration

Tenant Direction APIs Scopes
Microsoft 365 Target Microsoft Graph Directory.Read.All

TMCTools

@{
  Target = @{
    M365ClientId     = '11111111-2222-3333-4444-555555555555'
    M365ClientSecret = 'abcDeFghij1lMn23OpQrStUVwx4YzAbCD5EfghIJkLM='
    M365Tenant       = 'target.org'
  }
}

Update-M365SharedMailboxes -ConfigNode Target -Csv 'shared_mailboxes.csv' -ValidateOnly

Example 2: Basic update

Description

This example updates all shared mailboxes from the shared_mailboxes.csv file, validating all data prior to update.

Tenant configuration

Tenant Direction APIs Scopes
Microsoft 365 Target Microsoft Graph Directory.Read.All

TMCTools

@{
  Target = @{
    M365ClientId     = '11111111-2222-3333-4444-555555555555'
    M365ClientSecret = 'abcDeFghij1lMn23OpQrStUVwx4YzAbCD5EfghIJkLM='
    M365Tenant       = 'target.org'
  }
}

Update-M365SharedMailboxes -ConfigNode Target -Csv 'shared_mailboxes.csv'

Example 3: Advanced update with translation

Description

This example updates all shared mailboxes from the shared_mailboxes.csv file, validating all data prior to update. Data is translated according to the mappings provided in the translations.csv file.

Tenant configuration

Tenant Direction APIs Scopes
Microsoft 365 Target Microsoft Graph Directory.Read.All

TMCTools

@{
  Target = @{
    M365ClientId     = '11111111-2222-3333-4444-555555555555'
    M365ClientSecret = 'abcDeFghij1lMn23OpQrStUVwx4YzAbCD5EfghIJkLM='
    M365Tenant       = 'target.org'
  }
}

Update-M365SharedMailboxes -ConfigNode Target -Csv 'shared_mailboxes.csv' -TranslationCsv 'translations.csv'

PARAMETERS

-ConfigNode

The TMCTools.psd1 configuration node to use.

Type: String
Parameter Sets: Action
Aliases:
Accepted values: Source, Target

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Csv

The path to a CSV file containing shared mailboxes to update.

Type: String
Parameter Sets: Action
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-IgnoreErrors

Validation errors stop execution prior to the update by default. Use -IgnoreErrors to proceed with error records omitted.

Note that global errors are not impacted by this option.

Type: SwitchParameter
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ShowPrereqs

Prints the cmdlet prerequisites.

Type: SwitchParameter
Parameter Sets: Help
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-SkipValidation

Skips the property validation stage of the update.

Type: SwitchParameter
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-TranslationCsv

The path to the CSV file containing translation mappings. The file must use SourceName;TargetName as the field identifiers.

The following fields can be translated:

  • Identity
  • CalendarActAsDelegatesToAdd
  • CalendarAvailabilityDelegatesToAdd
  • CalendarEditorDelegatesToAdd
  • CalendarLimitedActAsDelegatesToAdd
  • CalendarLimitedReviewerDelegatesToAdd
  • CalendarReviewerDelegatesToAdd
  • ForwardingAddressesToAdd
  • ForwardingAddressesToRemove
  • MailboxFullAccessDelegatesToAdd
  • MailboxOnBehalfOfDelegatesToAdd
  • MailboxSendAsDelegatesToAdd
Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ValidateOnly

Validation and update are both performed by default. Use -ValidateOnly to perform the validation but skip the update.

It is recommended to run a -ValidateOnly pass first to identify potential issues prior to updating data. Note that records with validation errors will fail to update unless -IgnoreErrors is used, but records with validation warnings proceed without the data triggering the warning. A -ValidateOnly pass allows you to inspect these warnings before data is written and make any necessary changes.

Type: SwitchParameter
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

None

OUTPUTS

System.Void

NOTES

  • This cmdlet requires the ExchangeOnlineManagement PowerShell module. Install it by running Install-Module ExchangeOnlineManagement -Scope CurrentUser.

Required CSV format

*InScope *Identity #CalendarActAsDelegatesToAdd #CalendarAvailabilityDelegatesToAdd #CalendarEditorDelegatesToAdd #CalendarLimitedActAsDelegatesToAdd #CalendarLimitedReviewerDelegatesToAdd #CalendarReviewerDelegatesToAdd #ForwardingAddressesToAdd #ForwardingAddressesToRemove ForwardingType #MailboxFullAccessDelegatesToAdd #MailboxOnBehalfOfDelegatesToAdd #MailboxSendAsDelegatesToAdd
Yes Shared Mailbox 1 delegate1@example.org delegate2@example.org delegate3@example.org delegate4@example.org delegate5@example.org delegate6@example.org forward@external.org * ForwardOnly delegate7@example.org delegate8@example.org delegate9@example.org

CSV Notes

  • CSV fields should be separated by semicolons. For example, InScope;Identity....

  • Required fields are prefixed with an asterisk (*) in the example table for emphasis. Do not include the asterisk in the CSV file.

  • Multivalue fields are prefixed with a number sign (#) in the example table for emphasis. Do not include the number sign in the CSV file. Multiple values in a multivalue field should be separated by commas. For example, value1,value2....

  • CalendarActAsDelegatesToAdd implies MailboxOnBehalfOfDelegatesToAdd.

  • ForwardingAddressesToRemove has one valid value, which is the everything wildcard (*). When present, all forwarding addresses will be removed prior to adding forwarding addresses from the ForwardingAddressesToAdd field.

  • ForwardingType can be StoreAndForward or ForwardOnly.

TMCTools configuration options