2016-07-05 10 views
0

これまでのところ、Fei XueのおかげでREST APIを使用してメールを送信できました。私が知りたいのは、フォルダ間で電子メールを移動できることです。以下のリファレンス(V1.0を使用)は、私ができることを示唆しています。https://msdn.microsoft.com/en-us/office/office365/api/mail-rest-operations#MoveorcopymessagesPowershellを使用してREST API v1.0を使用してメッセージ(Office 365)を移動またはコピーすることはできますか?

私は一緒に何かを入れましたが、動作しません。 IDはメッセージIDと宛先フォルダIDを表します

$contentType = "application/json" 
$uri = "https://outlook.office365.com/api/v1.0/me/messages/AAMkADRjZmU1Njg3LWU1MTgtNDRlYS1hM2JjLThjYzVlYTNiYjI2NQBGAAAAAACnOSYQcbEERIZTVx5HtMm9BwDzVgO1bziCQLdugqQvOwrTAEVv8cxtAACxp0cQeSQxTYONMj3glZFxAAIF_5u4AAA=?/move" 

$body = @{ 
DestinationID = "AAMkADRjZmU1Njg3LWU1MTgtNDRlYS1hM2JjLThjYzVlYTNiYjI2NQAuAAAAAACnOSYQcbEERIZTVx5HtMm9AQCxp0cQeSQxTYONMj3glZFxAAGmgyRMAAA=" 
} 
$json = $body | ConvertTo-Json 
Invoke-RestMethod -Uri $uri -Method Post -Credential $cred -Body $json -ContentType $contentType 

私は電子メールを送信できるので、私はそれらを移動することができると思います。

答えて

0

エラーメッセージは何ですか?リクエストに基づいて、$ uriが正しくないようです。メッセージIDには含まれていないはずですか?。ここで

は、要求があなたの参考のためにwelll作品です:

$body="{""DestinationId"":""AQMkADQyZjE2NzY3LWEyNjEtNGI3NwAtOWJhOS1jN2I5NTdkYmY4NmEALgAAA6N9fgB38JpAkbQ1i6fbzV8BAL3QnQZrC1lNpUx8h1pAnzAAAAIBCgAAAA==""} 

Invoke-RestMethod -Method post -uri "https://outlook.office365.com/api/v1.0/me/messages/AAMkADQyZjE2NzY3LWEyNjEtNGI3Ny05YmE5LWM3Yjk1N2RiZjg2YQBGAAAAAACjfX4Ad-CaQJG0NYun281fBwC90J0GawtZTaVMfIdaQJ8wAAAAAAEMAAC90J0GawtZTaVMfIdaQJ8wAAFYk-FGAAA=/move" -Credential $cred -Body $body -ContentType "application/json" 
+0

さて私は、「リモートサーバーがエラー返さ。:(400)不正な要求」を取得なしで?と "リモートサーバーがエラーを返しました:(405)メソッドが許可されていません。とともに ? –

+0

Move REST APIは** https://outlook.office.com/api/v2.0/me/messages/ {message_id}/move **のようになります。メッセージIDを介してメッセージを取得して、メッセージIDが正しいことを確認できますか?さらに詳しいエラーメッセージを追跡するには、** Fiddler **を使用することができます。 –

+0

OK私はFiddlerを使用します。メッセージIDが正しいメッセージを参照していることを確認しました。つまり、v1.0は移動の機会を提供しませんか? –

関連する問題