命名空间:microsoft.graph
重要
Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
 
使用 JSON 或 MIME 格式答复 邮件 的所有收件人。
使用 JSON 格式时:
- 指定参数的注释或 正文 属性 
message 。 指定这两者将返回 HTTP 400 错误请求错误。 
- 如果原始邮件在 replyTo 属性中指定收件人,则根据 Internet 邮件格式 (RFC 2822) ,请将答复发送给 replyTo 中的收件人,而不是 from 属性中的收件人。
 
使用 MIME 格式时:
此方法将邮件保存在“已发送邮件”文件夹中。
或者, 创建草稿以全部答复邮件,并在以后 发送 。
此 API 可用于以下国家级云部署。
| 全局服务 | 
美国政府 L4 | 
美国政府 L5 (DOD) | 
由世纪互联运营的中国 | 
| ✅ | 
✅ | 
✅ | 
✅ | 
权限
为此 API 选择标记为最低特权的权限。 
              只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 | 
最低特权权限 | 
更高特权权限 | 
| 委派(工作或学校帐户) | 
Mail.Send | 
不可用。 | 
| 委派(个人 Microsoft 帐户) | 
Mail.Send | 
不可用。 | 
| 应用程序 | 
Mail.Send | 
不可用。 | 
HTTP 请求
POST /users/me/messages/{id}/replyAll
POST /users/{id | userPrincipalName}/messages/{id}/replyAll
POST /me/mailFolders/{id}/messages/{id}/replyAll
POST /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}/replyAll
| 名称 | 
类型 | 
说明 | 
| Authorization | 
string | 
持有者 {token}。 必需 | 
| Content-Type | 
string | 
实体正文中的数据性质。 必需  用于 application/json JSON 对象和 text/plain MIME 内容 | 
| Prefer: outlook.timezone | 
string | 
设置此 API 基于请求正文创建的 HTML 答复消息字段的时区 Sent 。 该值可以是为用户配置 的任何 supportedTimeZones 。 如果未指定,则该 Sent 字段采用 UTC 格式。
   仅当指定 Content-Type: application/json 标头以 HTML 格式创建答复邮件时,才使用此标头。 如果使用 标头 Content-Type: text/plain ,则此 Prefer 标头没有任何影响。 可选。 | 
请求正文
使用 JSON 格式时,提供具有以下参数的 JSON 对象。
| 参数 | 
类型 | 
说明 | 
| 注释 | 
String | 
要包含的注释。 可以为空字符串。 | 
| 消息 | 
              邮件 | 
在答复消息中更新的任何可写属性。 | 
以 MIME 格式指定正文时,请向 MIME 内容提供适用的 Internet 消息标头,这些标头在请求正文中全部编码为 base64 格式。 此方法将原始邮件的发件人和所有收件人加载为新邮件的收件人。
响应
如果成功,此方法返回 202 Accepted 响应代码。 它不会在响应正文中返回任何内容。
如果请求正文包含错误的 MIME 内容,此方法将返回 400 Bad request 和以下错误消息:“无效的 base64 字符串 MIME 内容”。
示例
以下示例包含一个批注,并向所有答复邮件添加附件。
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/beta/me/messages/AAMkADA1MTAAAH5JaKAAA=/replyAll
Content-Type: application/json
{
    "message":{
      "attachments": [
        {
          "@odata.type": "#microsoft.graph.fileAttachment",
          "name": "guidelines.txt",
          "contentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
        }
      ]
    },
    "comment": "Please take a look at the attached guidelines before you decide on the name."
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Me.Messages.Item.ReplyAll;
using Microsoft.Graph.Beta.Models;
var requestBody = new ReplyAllPostRequestBody
{
	Message = new Message
	{
		Attachments = new List<Attachment>
		{
			new FileAttachment
			{
				OdataType = "#microsoft.graph.fileAttachment",
				Name = "guidelines.txt",
				ContentBytes = Convert.FromBase64String("bWFjIGFuZCBjaGVlc2UgdG9kYXk="),
			},
		},
	},
	Comment = "Please take a look at the attached guidelines before you decide on the name.",
};
// To initialize your graphClient, see https://free.blessedness.top/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Me.Messages["{message-id}"].ReplyAll.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
	  "context"
	  msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
	  graphusers "github.com/microsoftgraph/msgraph-beta-sdk-go/users"
	  graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
	  //other-imports
)
requestBody := graphusers.NewItemReplyAllPostRequestBody()
message := graphmodels.NewMessage()
attachment := graphmodels.NewFileAttachment()
name := "guidelines.txt"
attachment.SetName(&name) 
contentBytes := []byte("bWFjIGFuZCBjaGVlc2UgdG9kYXk=")
attachment.SetContentBytes(&contentBytes) 
attachments := []graphmodels.Attachmentable {
	attachment,
}
message.SetAttachments(attachments)
requestBody.SetMessage(message)
comment := "Please take a look at the attached guidelines before you decide on the name."
requestBody.SetComment(&comment) 
// To initialize your graphClient, see https://free.blessedness.top/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Me().Messages().ByMessageId("message-id").ReplyAll().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.users.item.messages.item.replyall.ReplyAllPostRequestBody replyAllPostRequestBody = new com.microsoft.graph.beta.users.item.messages.item.replyall.ReplyAllPostRequestBody();
Message message = new Message();
LinkedList<Attachment> attachments = new LinkedList<Attachment>();
FileAttachment attachment = new FileAttachment();
attachment.setOdataType("#microsoft.graph.fileAttachment");
attachment.setName("guidelines.txt");
byte[] contentBytes = Base64.getDecoder().decode("bWFjIGFuZCBjaGVlc2UgdG9kYXk=");
attachment.setContentBytes(contentBytes);
attachments.add(attachment);
message.setAttachments(attachments);
replyAllPostRequestBody.setMessage(message);
replyAllPostRequestBody.setComment("Please take a look at the attached guidelines before you decide on the name.");
graphClient.me().messages().byMessageId("{message-id}").replyAll().post(replyAllPostRequestBody);
const options = {
	authProvider,
};
const client = Client.init(options);
const replyAll = {
    message: {
      attachments: [
        {
          '@odata.type': '#microsoft.graph.fileAttachment',
          name: 'guidelines.txt',
          contentBytes: 'bWFjIGFuZCBjaGVlc2UgdG9kYXk='
        }
      ]
    },
    comment: 'Please take a look at the attached guidelines before you decide on the name.'
};
await client.api('/me/messages/AAMkADA1MTAAAH5JaKAAA=/replyAll')
	.version('beta')
	.post(replyAll);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Messages\Item\ReplyAll\ReplyAllPostRequestBody;
use Microsoft\Graph\Beta\Generated\Models\Message;
use Microsoft\Graph\Beta\Generated\Models\Attachment;
use Microsoft\Graph\Beta\Generated\Models\FileAttachment;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ReplyAllPostRequestBody();
$message = new Message();
$attachmentsAttachment1 = new FileAttachment();
$attachmentsAttachment1->setOdataType('#microsoft.graph.fileAttachment');
$attachmentsAttachment1->setName('guidelines.txt');
$attachmentsAttachment1->setContentBytes(\GuzzleHttp\Psr7\Utils::streamFor(base64_decode('bWFjIGFuZCBjaGVlc2UgdG9kYXk=')));
$attachmentsArray []= $attachmentsAttachment1;
$message->setAttachments($attachmentsArray);
$requestBody->setMessage($message);
$requestBody->setComment('Please take a look at the attached guidelines before you decide on the name.');
$graphServiceClient->me()->messages()->byMessageId('message-id')->replyAll()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Mail
$params = @{
	message = @{
		attachments = @(
			@{
				"@odata.type" = "#microsoft.graph.fileAttachment"
				name = "guidelines.txt"
				contentBytes = "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
			}
		)
	}
	comment = "Please take a look at the attached guidelines before you decide on the name."
}
# A UPN can also be used as -UserId.
Invoke-MgBetaReplyAllUserMessage -UserId $userId -MessageId $messageId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.users.item.messages.item.reply_all.reply_all_post_request_body import ReplyAllPostRequestBody
from msgraph_beta.generated.models.message import Message
from msgraph_beta.generated.models.attachment import Attachment
from msgraph_beta.generated.models.file_attachment import FileAttachment
# To initialize your graph_client, see https://free.blessedness.top/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ReplyAllPostRequestBody(
	message = Message(
		attachments = [
			FileAttachment(
				odata_type = "#microsoft.graph.fileAttachment",
				name = "guidelines.txt",
				content_bytes = base64.urlsafe_b64decode("bWFjIGFuZCBjaGVlc2UgdG9kYXk="),
			),
		],
	),
	comment = "Please take a look at the attached guidelines before you decide on the name.",
)
await graph_client.me.messages.by_message_id('message-id').reply_all.post(request_body)
 
响应
以下示例显示了相应的响应。
HTTP/1.1 202 Accepted
请求
POST https://graph.microsoft.com/beta/me/messages/AAMkADA1MTAAAH5JaLAAA=/replyAll
Content-Type: text/plain
RnJvbTogQWxleCBXaWxiZXIgPEFsZXhXQGNvbnRvc28uY29tPgpUbzogTWVnYW4gQm93ZW4gPE1l
Z2FuQkBjb250b3NvLmNvbT4KU3ViamVjdDogSW50ZXJuYWwgUmVzdW1lIFN1Ym1pc3Npb246IFNh
bGVzIEFzc29jaWF0ZQpUaHJlYWQtVG9waWM...
响应
以下示例显示了相应的响应。
HTTP/1.1 202 Accepted
如果请求正文包含错误的 MIME 内容,此方法返回以下错误消息。
HTTP/1.1 400 Bad Request
Content-type: application/json
{
    "error": {
        "code": "ErrorMimeContentInvalidBase64String",
        "message": "Invalid base64 string for MIME content."
    }
}