Die APIs unter der /beta Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Antworten Sie dem Absender einer Nachricht im JSON- oder MIME-Format.
Bei Verwendung des JSON-Formats:
Geben Sie entweder einen Kommentar oder die body-Eigenschaft des message Parameters an. Wenn Sie beide angeben, wird ein HTTP-Fehler 400 Bad Request zurückgegeben.
Wenn die ursprüngliche Nachricht einen Empfänger in der replyTo-Eigenschaft pro Internetnachrichtenformat (RFC 2822) angibt, senden Sie die Antwort an die Empfänger in replyTo und nicht an den Empfänger in der eigenschaft from .
Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
Berechtigungstyp
Berechtigungen mit den geringsten Berechtigungen
Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto)
Mail.Send
Nicht verfügbar.
Delegiert (persönliches Microsoft-Konto)
Mail.Send
Nicht verfügbar.
Anwendung
Mail.Send
Nicht verfügbar.
HTTP-Anforderung
POST /me/messages/{id}/reply
POST /users/{id | userPrincipalName}/messages/{id}/reply
POST /me/mailFolders/{id}/messages/{id}/reply
POST /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}/reply
Anforderungsheader
Name
Typ
Beschreibung
Authorization
string
Bearer {token}. Erforderlich
Content-Type
string
Die Art der Daten im Textkörper einer Entität. Erforderlich Verwenden für application/json ein JSON-Objekt und text/plain für MIME-Inhalte
Prefer: outlook.timezone
string
Legt die Zeitzone für das Sent Feld der Antwortnachricht in HTML fest, das diese API basierend auf dem Anforderungstext erstellt. Der Wert kann jede der supportedTimeZones sein, die für den Benutzer konfiguriert sind. Wenn nicht angegeben, wird dieses Sent Feld in UTC angegeben.
Verwenden Sie diesen Header nur, wenn Sie den Content-Type: application/json Header angeben, um die Antwortnachricht in HTML zu erstellen. Wenn Sie den Content-Type: text/plain -Header verwenden, hat dieser Prefer Header keine Auswirkung. Optional.
Anforderungstext
Wenn Sie das JSON-Format verwenden, schließen Sie ein JSON-Objekt mit den folgenden Parametern ein.
Parameter
Typ
Beschreibung
comment
String
Ein Kommentar, der eingefügt werden kann. Kann eine leere Zeichenfolge sein.
Alle beschreibbaren Eigenschaften, die in der Antwortnachricht aktualisiert werden sollen.
Wenn Sie den Text im MIME-Format angeben, geben Sie den MIME-Inhalt mit den entsprechenden Internetnachrichtenheadern an, die alle im Base64-Format im Anforderungstext codiert sind. Diese Methode verwendet den Absender der ursprünglichen Nachricht als Empfänger.
Antwort
Wenn die Methode erfolgreich verläuft, wird der Antwortcode 202 Accepted zurückgegeben. Es gibt nichts im Antworttext zurück.
Wenn der Anforderungstext falsch formatierten MIME-Inhalt enthält, gibt diese Methode einen 400 Bad Request Antwortcode und die folgende Fehlermeldung zurück: "Ungültige base64-Zeichenfolge für MIME-Inhalt".
Beispiele
Beispiel 1: Antworten auf eine Nachricht im JSON-Format
Das folgende Beispiel enthält einen Kommentar und fügt der Antwortnachricht einen Empfänger hinzu.
POST https://graph.microsoft.com/beta/me/messages/AAMkADA1MTAAAAqldOAAA=/reply
Content-Type: application/json
{
"message":{
"toRecipients":[
{
"emailAddress": {
"address":"samanthab@contoso.com",
"name":"Samantha Booth"
}
},
{
"emailAddress":{
"address":"randiw@contoso.com",
"name":"Randi Welch"
}
}
]
},
"comment": "Samantha, Randi, would you name the group please?"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Me.Messages.Item.Reply;
using Microsoft.Graph.Beta.Models;
var requestBody = new ReplyPostRequestBody
{
Message = new Message
{
ToRecipients = new List<Recipient>
{
new Recipient
{
EmailAddress = new EmailAddress
{
Address = "samanthab@contoso.com",
Name = "Samantha Booth",
},
},
new Recipient
{
EmailAddress = new EmailAddress
{
Address = "randiw@contoso.com",
Name = "Randi Welch",
},
},
},
},
Comment = "Samantha, Randi, would you name the group please?",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Me.Messages["{message-id}"].Reply.PostAsync(requestBody);
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
mgc-beta users messages reply post --user-id {user-id} --message-id {message-id} --body '{\
"message":{\
"toRecipients":[\
{\
"emailAddress": {\
"address":"samanthab@contoso.com",\
"name":"Samantha Booth"\
}\
},\
{\
"emailAddress":{\
"address":"randiw@contoso.com",\
"name":"Randi Welch"\
}\
}\
]\
},\
"comment": "Samantha, Randi, would you name the group please?"\
}\
\
'
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
// 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.NewItemReplyPostRequestBody()
message := graphmodels.NewMessage()
recipient := graphmodels.NewRecipient()
emailAddress := graphmodels.NewEmailAddress()
address := "samanthab@contoso.com"
emailAddress.SetAddress(&address)
name := "Samantha Booth"
emailAddress.SetName(&name)
recipient.SetEmailAddress(emailAddress)
recipient1 := graphmodels.NewRecipient()
emailAddress := graphmodels.NewEmailAddress()
address := "randiw@contoso.com"
emailAddress.SetAddress(&address)
name := "Randi Welch"
emailAddress.SetName(&name)
recipient1.SetEmailAddress(emailAddress)
toRecipients := []graphmodels.Recipientable {
recipient,
recipient1,
}
message.SetToRecipients(toRecipients)
requestBody.SetMessage(message)
comment := "Samantha, Randi, would you name the group please?"
requestBody.SetComment(&comment)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Me().Messages().ByMessageId("message-id").Reply().Post(context.Background(), requestBody, nil)
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
// 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.reply.ReplyPostRequestBody replyPostRequestBody = new com.microsoft.graph.beta.users.item.messages.item.reply.ReplyPostRequestBody();
Message message = new Message();
LinkedList<Recipient> toRecipients = new LinkedList<Recipient>();
Recipient recipient = new Recipient();
EmailAddress emailAddress = new EmailAddress();
emailAddress.setAddress("samanthab@contoso.com");
emailAddress.setName("Samantha Booth");
recipient.setEmailAddress(emailAddress);
toRecipients.add(recipient);
Recipient recipient1 = new Recipient();
EmailAddress emailAddress1 = new EmailAddress();
emailAddress1.setAddress("randiw@contoso.com");
emailAddress1.setName("Randi Welch");
recipient1.setEmailAddress(emailAddress1);
toRecipients.add(recipient1);
message.setToRecipients(toRecipients);
replyPostRequestBody.setMessage(message);
replyPostRequestBody.setComment("Samantha, Randi, would you name the group please?");
graphClient.me().messages().byMessageId("{message-id}").reply().post(replyPostRequestBody);
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Messages\Item\Reply\ReplyPostRequestBody;
use Microsoft\Graph\Beta\Generated\Models\Message;
use Microsoft\Graph\Beta\Generated\Models\Recipient;
use Microsoft\Graph\Beta\Generated\Models\EmailAddress;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ReplyPostRequestBody();
$message = new Message();
$toRecipientsRecipient1 = new Recipient();
$toRecipientsRecipient1EmailAddress = new EmailAddress();
$toRecipientsRecipient1EmailAddress->setAddress('samanthab@contoso.com');
$toRecipientsRecipient1EmailAddress->setName('Samantha Booth');
$toRecipientsRecipient1->setEmailAddress($toRecipientsRecipient1EmailAddress);
$toRecipientsArray []= $toRecipientsRecipient1;
$toRecipientsRecipient2 = new Recipient();
$toRecipientsRecipient2EmailAddress = new EmailAddress();
$toRecipientsRecipient2EmailAddress->setAddress('randiw@contoso.com');
$toRecipientsRecipient2EmailAddress->setName('Randi Welch');
$toRecipientsRecipient2->setEmailAddress($toRecipientsRecipient2EmailAddress);
$toRecipientsArray []= $toRecipientsRecipient2;
$message->setToRecipients($toRecipientsArray);
$requestBody->setMessage($message);
$requestBody->setComment('Samantha, Randi, would you name the group please?');
$graphServiceClient->me()->messages()->byMessageId('message-id')->reply()->post($requestBody)->wait();
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
Import-Module Microsoft.Graph.Beta.Users.Actions
$params = @{
message = @{
toRecipients = @(
@{
emailAddress = @{
address = "samanthab@contoso.com"
name = "Samantha Booth"
}
}
@{
emailAddress = @{
address = "randiw@contoso.com"
name = "Randi Welch"
}
}
)
}
comment = "Samantha, Randi, would you name the group please?"
}
# A UPN can also be used as -UserId.
Invoke-MgBetaReplyUserMessage -UserId $userId -MessageId $messageId -BodyParameter $params
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
# 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.reply_post_request_body import ReplyPostRequestBody
from msgraph_beta.generated.models.message import Message
from msgraph_beta.generated.models.recipient import Recipient
from msgraph_beta.generated.models.email_address import EmailAddress
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ReplyPostRequestBody(
message = Message(
to_recipients = [
Recipient(
email_address = EmailAddress(
address = "samanthab@contoso.com",
name = "Samantha Booth",
),
),
Recipient(
email_address = EmailAddress(
address = "randiw@contoso.com",
name = "Randi Welch",
),
),
],
),
comment = "Samantha, Randi, would you name the group please?",
)
await graph_client.me.messages.by_message_id('message-id').reply.post(request_body)
Wichtig
Die Microsoft Graph SDKs verwenden standardmäßig die Version v1.0 der API und unterstützen nicht alle Typen, Eigenschaften und APIs, die in der Beta-Version verfügbar sind. Einzelheiten zum Zugriff auf die Beta-API mit dem SDK finden Sie unter Verwenden der Microsoft Graph SDKs mit der Beta-API.
Beispiel 2: Antworten auf eine Nachricht im MIME-Format
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/v1.0/me/messages/AAMkADA1MTAAAAqldOAAA=/reply
Content-Type: text/plain
UmVjZWl2ZWQ6IGZyb20gY29udG9zby5jb20gKDEwLjE5NC4yNDEuMTk3KSBieSAKY29udG9zby5jb20gKDEwLjE5NC4yNDEuMTk3KSB3aXRoIE1pY3Jvc29mdCAKU01UUCBTZXJ2ZXIgKHZlcnNpb249VExTMV8yLCAKY2lwaGVyPVRMU19FQ0RIRV9SU0FfV0lUSF9BRVNfMjU2X0NCQ19TSEEzODRfUDI1NikgaW
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 202 Accepted
Wenn der Anforderungstext falsch formatierten MIME-Inhalt enthält, gibt diese Methode die folgende Fehlermeldung an.
HTTP/1.1 400 Bad Request
Content-type: application/json
{
"error": {
"code": "ErrorMimeContentInvalidBase64String",
"message": "Invalid base64 string for MIME content."
}
}