You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Microsoft Graph PHP SDK移动邮件时缺失DestinationId参数求助

Microsoft Graph 邮件移动/复制功能 DestinationId 参数问题解决

你的错误是因为调用move接口时未传入必填的DestinationId参数,这个参数需要放在请求体中,而非URL路径里。以下是正确的实现方式:

移动邮件的正确代码

// 替换为你要移动到的目标文件夹ID
$destinationFolderId = "目标文件夹ID";

// 构造请求体,传入DestinationId
$requestBody = [
    "DestinationId" => $destinationFolderId
];

// 调用move接口并附加请求体
$graph->createCollectionRequest("POST", "/users/xxx@xxxx.com/mailFolders/$inbox_id/childFolders/$folder_id/messages/$message_id/move")
    ->attachBody($requestBody)
    ->execute();

复制邮件的实现(类似逻辑)

如果要实现复制功能,只需将URL中的move替换为copy,请求体参数保持一致:

$graph->createCollectionRequest("POST", "/users/xxx@xxxx.com/mailFolders/$inbox_id/childFolders/$folder_id/messages/$message_id/copy")
    ->attachBody($requestBody)
    ->execute();

注意事项

  • DestinationId必须是有效的邮件文件夹ID(可通过/users/{user-id}/mailFolders接口获取所有文件夹ID)
  • 确保你的Graph客户端已申请Mail.ReadWrite权限,否则会出现权限不足错误

内容的提问来源于stack exchange,提问作者Thierry Brunel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 04:26:55