Logo

Documentation home for Transend tools

Import-M365SharedMailboxes

SYNOPSIS

Imports shared mailboxes into a Microsoft 365 tenant.

SYNTAX

Action

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

Help

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

DESCRIPTION

Use the Import-M365SharedMailboxes cmdlet to import shared mailboxes into 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 import. This is a recommended first step so any warnings can be addressed prior to import.

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'
  }
}

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

Example 2: Basic import

Description

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

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'
  }
}

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

Example 3: Advanced import with translation

Description

This example imports all shared mailboxes from the shared_mailboxes.csv file, validating all data prior to import. 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'
  }
}

Import-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 import.

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 import 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 import.

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:

  • EmailAddress
  • CalendarActAsDelegatesToAdd
  • CalendarAvailabilityDelegatesToAdd
  • CalendarEditorDelegatesToAdd
  • CalendarLimitedActAsDelegatesToAdd
  • CalendarLimitedReviewerDelegatesToAdd
  • CalendarReviewerDelegatesToAdd
  • ForwardingAddressesToAdd
  • 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 import are both performed by default. Use -ValidateOnly to perform the validation but skip the import.

It is recommended to run a -ValidateOnly pass first to identify potential issues prior to importing data. Note that records with validation errors will fail to import 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 *DisplayName *EmailAddress #CalendarActAsDelegatesToAdd #CalendarAvailabilityDelegatesToAdd #CalendarEditorDelegatesToAdd #CalendarLimitedActAsDelegatesToAdd #CalendarLimitedReviewerDelegatesToAdd #CalendarReviewerDelegatesToAdd #ForwardingAddressesToAdd ForwardingType #MailboxFullAccessDelegatesToAdd #MailboxOnBehalfOfDelegatesToAdd #MailboxSendAsDelegatesToAdd
Yes Shared Mailbox 1 shared.mailbox1@example.org 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;DisplayName....

  • 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.

  • ForwardingType can be StoreAndForward or ForwardOnly.

TMCTools configuration options