cannot connect to exchange online via powershell

Anonymous
2020-06-24T16:23:06+00:00

I am unable to access exchange online via powershell anymore. it has been about 2 or 3 months since i have tried but this used to work with no issues. 

I have tried connecting 3 ways, all of which fail with the same error

#1

$UserCredential = Get-Credential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection

Import-PSSession -Session $Session -DisableNameChecking

the progress bar comes up, it says importing and counts up to 6 or 700 commands as expected then the unexpected error message:

Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

After that, none of the commands work - example Get-Mailbox 

#2

Connect-EXOPSSession -UserPrincipalName ******@x.com

same deal. same error

Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

At C:\Users\x\AppData\Local\Apps\2.0\A53V0WOT.PE1\6Y7OL9NA.H46\micr..tion_1f16bd4ec4c2bb19_0010.0000_673f37

c317fb5976\CreateExoPSSession.ps1:311 char:40

  • ...      $PSSessionModuleInfo = Import-PSSession $PSSession -AllowClobber

+                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

    + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

#3

Connect-ExchangeOnline -UserPrincipalName ******@x.com -ShowProgress $true

same deal. same error

The module allows access to all existing remote PowerShell (V1) cmdlets in addition to the 9 new, faster, and more reliable cmdlets.

|--------------------------------------------------------------------------|

|    Old Cmdlets                    |    New/Reliable/Faster Cmdlets       |

|--------------------------------------------------------------------------|

|    Get-CASMailbox                 |    Get-EXOCASMailbox                 |

|    Get-Mailbox                    |    Get-EXOMailbox                    |

|    Get-MailboxFolderPermission    |    Get-EXOMailboxFolderPermission    |

|    Get-MailboxFolderStatistics    |    Get-EXOMailboxFolderStatistics    |

|    Get-MailboxPermission          |    Get-EXOMailboxPermission          |

|    Get-MailboxStatistics          |    Get-EXOMailboxStatistics          |

|    Get-MobileDeviceStatistics     |    Get-EXOMobileDeviceStatistics     |

|    Get-Recipient                  |    Get-EXORecipient                  |

|    Get-RecipientPermission        |    Get-EXORecipientPermission        |

|--------------------------------------------------------------------------|

To get additional information, run: Get-Help Connect-ExchangeOnline or check https://aka.ms/exops-docs

Send your product improvement suggestions and feedback to ******@service.microsoft.com. For issues related to the module, contact Microsoft support. Don't use the feedback alias for problems or support issues.


Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

At C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\1.0.1\ExchangeOnlineManagement.psm1:454 char:40

  • ... oduleInfo = Import-PSSession $PSSession -AllowClobber -DisableNameChe ...

+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

    + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

At this point effectively unable to admin exchange online via powershell. Anyone have any ideas?

Microsoft 365 and Office | Subscription, account, billing | For business | Other

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments

87 answers

Sort by: Most helpful
  1. Anonymous
    2020-09-18T02:25:32+00:00

    Failing for me, 2020-09-17, all syntaxes applied. Friedrich's form filled out. We're subscribed to Microsoft 365, and our people are in AzureAD. I'm not sure whether this thread is the answer to my issue, but the error messages are identical.

    All my scripts that used to work now get as far as "Creating implicit remoting module", a download, then fail at Import-PSSession $Session. $UserCredential = various forms of collecting credentials

    Old connection method that used to work but now fails

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic –AllowRedirection

    Import-PSSession $Session

    Result:

    Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

    At nameofmyscript.ps1:6 char:1

    • Import-PSSession $Session
    • 
      

        + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

        + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

    +other failures due to the above failure

    Just prior to below, I installed PowerShellGet so I could install EXO V2 as per About the Exchange Online PowerShell V2 module so I can start connecting using non-basic authentication methods, in case that was part of the problem. Nope.

    I can't connect to Exchange Online PowerShell; although I can Import-Module ExchangeOnlineManagement in order to get to the point I can connect without MFA, Connect-ExchangeOnline -Credential $UserCredential -ShowProgress $true does the same "Creating implicit remoting module", a download, then consistently fails with the same error:

    Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

    At C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\1.0.1\ExchangeOnlineManagement.psm1:454 char:40

    • ... oduleInfo = Import-PSSession $PSSession -AllowClobber -DisableNameChe ...

    +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

        + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

    **Connect-ExchangeOnline -UserPrincipalName ****@mycompany.com -ShowProgress $true fails with

    Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

    At C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\1.0.1\ExchangeOnlineManagement.psm1:454 char:40

    • ... oduleInfo = Import-PSSession $PSSession -AllowClobber -DisableNameChe ...

    +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

        + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

    Connect-ExchangeOnline -ConnectionUri "https://outlook.office365.com/powershell-liveid?SerializationLevel=Full" fails with

    Import-PSSession : Data returned by the remote Get-FormatData command is not in the expected format.

    At C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\1.0.1\ExchangeOnlineManagement.psm1:454 char:40

    • ... oduleInfo = Import-PSSession $PSSession -AllowClobber -DisableNameChe ...

    +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        + CategoryInfo          : InvalidResult: (:) [Import-PSSession], ArgumentException

        + FullyQualifiedErrorId : ErrorMalformedDataFromRemoteCommand,Microsoft.PowerShell.Commands.ImportPSSessionCommand

    For a guy who's just at the head end of learning PowerShell, this isn't as much fun as it looks. And as it turns out, I'm not learning it just for fun. This is preventing me from getting actual work done. :-(

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2020-09-17T12:45:14+00:00

    I am having the same issue. Using the -DelegatedOrg workaround listed up above worked, but this is an issue with many of the scripts we have running. Any update on this?

    Was this answer helpful?

    0 comments No comments
  3. Anonymous
    2020-09-16T21:25:36+00:00

    Tried all of the various work around to get connected to absolutely no avail. My coworkers are not having this problem though and if I log in on a different account it does not have the issue either. This is kind of a really big pain as we use this for a lot of things. What is causing this issue?

    Was this answer helpful?

    0 comments No comments
  4. Anonymous
    2020-08-28T23:55:06+00:00

    I'm having the same problem as well.  Is there a fix or workaround?

    Was this answer helpful?

    0 comments No comments
  5. Anonymous
    2020-08-27T21:24:38+00:00

    Heya Folks,

    first of all: We are still on the topic, it's just really, really painful to track since it is a transient problem that is extremely hard to nail down for debugging, even when we have a currently affected machine. I unfortunately don't have any significant breakthroughs to report, apologies :(

    Joe: That's bad, can you submit your account-name in this form so we can take a look?

    The recommended workaround with the ConnectionUri has so far always worked otherwise, can you post the full command that did not work for you?

    Other than that, why did delegate organization work and not the ConnectionUri?

    The issue/error is based on the specific Exchange Online Endpoint (Server) you end up connecting to.

    This is generally determined by the location of your mailbox.

    Using the ConnectionUri method to connect does not affect server selection, but changes the way the session is set up, which should circumvent the issue.

    Using the Delegate Organization parameter changes the server you connect to.

    The ConnectionUri method is the recommended one, as it allows for best load balancing and prevents putting all your eggs into a single nest: One of your users may be affected. If you now move all of your connections to the Delegate Organization they will likely cluster and if that Server starts showing the symptoms ... not a happy experience.

    Was this answer helpful?

    0 comments No comments