名前空間: microsoft.graph
重要
Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。
JSON 形式または MIME 形式を使用してメッセージを転送します。
JSON 形式を使用すると、以下のことが可能になります。
-
message パラメーターのコメントまたは body プロパティを指定します。 両方を指定すると、「HTTP 400 要求が正しくありません」というエラーが返されます。
-
toRecipients パラメーターまたは message パラメーターの toRecipients プロパティを指定します。 両方を指定するか、どちらも指定しないと、「HTTP 400 要求が正しくありません」というエラーが返されます。
MIME 形式を使用すると、以下のことが可能になります。
このメソッドでは、[送信済みアイテム] フォルダーにメッセージを保存できます。
または、 下書きを作成してメッセージを転送し、後で 送信 します。
この API は、次の国内クラウド展開で使用できます。
| グローバル サービス |
米国政府機関 L4 |
米国政府機関 L5 (DOD) |
21Vianet が運営する中国 |
| ✅ |
✅ |
✅ |
✅ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。
アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。
| アクセス許可の種類 |
最小特権アクセス許可 |
より高い特権のアクセス許可 |
| 委任 (職場または学校のアカウント) |
Mail.Send |
注意事項なし。 |
| 委任 (個人用 Microsoft アカウント) |
Mail.Send |
注意事項なし。 |
| アプリケーション |
Mail.Send |
注意事項なし。 |
HTTP 要求
POST /me/messages/{id}/forward
POST /users/{id | userPrincipalName}/messages/{id}/forward
POST /me/mailFolders/{id}/messages/{id}/forward
POST /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}/forward
| 名前 |
型 |
説明 |
| Authorization |
string |
ベアラー {token}。 必須です。
認証と認可についての詳細をご覧ください。 |
| Content-Type |
string |
エンティティ本文内のデータの性質です。 必須です。 JSON オブジェクトには application/json を、MIME コンテンツには text/plain を使用します。 |
要求本文
JSON オブジェクトを使用する場合、次のパラメーターを含む JSON オブジェクトを指定します。
| パラメーター |
型 |
説明 |
| comment |
String |
含めるコメントです。 空の文字列にすることができます。 |
| toRecipients |
recipient collection |
受信者の一覧です。 |
| message |
message |
返信メッセージで更新する書き込み可能なプロパティです。 |
MIME 形式で本文を指定する場合は、適用するインターネット メッセージ ヘッダー") を含む MIME コンテンツを、要求本文に base64 形式ですべてエンコードして指定します。
応答
成功した場合、このメソッドは 202 Accepted 応答コードを返します。 応答本文では何も返されません。
要求本文に不正な MIME コンテンツが含まれていた場合、このメソッドは 400 Bad request と次のエラー メッセージを返します。"MIME コンテンツの無効な base64 文字列"。
例
次の例では、 isDeliveryReceiptRequested プロパティを true に設定し、コメントを追加してメッセージを転送します。
要求
次の例は要求を示しています。
POST https://graph.microsoft.com/beta/me/messages/AAMkADA1MTAAAH5JaLAAA=/forward
Content-Type: application/json
{
"message":{
"isDeliveryReceiptRequested": true,
"toRecipients":[
{
"emailAddress": {
"address":"danas@contoso.com",
"name":"Dana Swope"
}
}
]
},
"comment": "Dana, just want to make sure you get this."
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Me.Messages.Item.Forward;
using Microsoft.Graph.Beta.Models;
var requestBody = new ForwardPostRequestBody
{
Message = new Message
{
IsDeliveryReceiptRequested = true,
ToRecipients = new List<Recipient>
{
new Recipient
{
EmailAddress = new EmailAddress
{
Address = "danas@contoso.com",
Name = "Dana Swope",
},
},
},
},
Comment = "Dana, just want to make sure you get this.",
};
// 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}"].Forward.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.NewItemForwardPostRequestBody()
message := graphmodels.NewMessage()
isDeliveryReceiptRequested := true
message.SetIsDeliveryReceiptRequested(&isDeliveryReceiptRequested)
recipient := graphmodels.NewRecipient()
emailAddress := graphmodels.NewEmailAddress()
address := "danas@contoso.com"
emailAddress.SetAddress(&address)
name := "Dana Swope"
emailAddress.SetName(&name)
recipient.SetEmailAddress(emailAddress)
toRecipients := []graphmodels.Recipientable {
recipient,
}
message.SetToRecipients(toRecipients)
requestBody.SetMessage(message)
comment := "Dana, just want to make sure you get this."
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").Forward().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.forward.ForwardPostRequestBody forwardPostRequestBody = new com.microsoft.graph.beta.users.item.messages.item.forward.ForwardPostRequestBody();
Message message = new Message();
message.setIsDeliveryReceiptRequested(true);
LinkedList<Recipient> toRecipients = new LinkedList<Recipient>();
Recipient recipient = new Recipient();
EmailAddress emailAddress = new EmailAddress();
emailAddress.setAddress("danas@contoso.com");
emailAddress.setName("Dana Swope");
recipient.setEmailAddress(emailAddress);
toRecipients.add(recipient);
message.setToRecipients(toRecipients);
forwardPostRequestBody.setMessage(message);
forwardPostRequestBody.setComment("Dana, just want to make sure you get this.");
graphClient.me().messages().byMessageId("{message-id}").forward().post(forwardPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const forward = {
message: {
isDeliveryReceiptRequested: true,
toRecipients: [
{
emailAddress: {
address: 'danas@contoso.com',
name: 'Dana Swope'
}
}
]
},
comment: 'Dana, just want to make sure you get this.'
};
await client.api('/me/messages/AAMkADA1MTAAAH5JaLAAA=/forward')
.version('beta')
.post(forward);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Messages\Item\Forward\ForwardPostRequestBody;
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 ForwardPostRequestBody();
$message = new Message();
$message->setIsDeliveryReceiptRequested(true);
$toRecipientsRecipient1 = new Recipient();
$toRecipientsRecipient1EmailAddress = new EmailAddress();
$toRecipientsRecipient1EmailAddress->setAddress('danas@contoso.com');
$toRecipientsRecipient1EmailAddress->setName('Dana Swope');
$toRecipientsRecipient1->setEmailAddress($toRecipientsRecipient1EmailAddress);
$toRecipientsArray []= $toRecipientsRecipient1;
$message->setToRecipients($toRecipientsArray);
$requestBody->setMessage($message);
$requestBody->setComment('Dana, just want to make sure you get this.');
$graphServiceClient->me()->messages()->byMessageId('message-id')->forward()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Mail
$params = @{
message = @{
isDeliveryReceiptRequested = $true
toRecipients = @(
@{
emailAddress = @{
address = "danas@contoso.com"
name = "Dana Swope"
}
}
)
}
comment = "Dana, just want to make sure you get this."
}
# A UPN can also be used as -UserId.
Invoke-MgBetaForwardUserMessage -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.forward.forward_post_request_body import ForwardPostRequestBody
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 = ForwardPostRequestBody(
message = Message(
is_delivery_receipt_requested = True,
to_recipients = [
Recipient(
email_address = EmailAddress(
address = "danas@contoso.com",
name = "Dana Swope",
),
),
],
),
comment = "Dana, just want to make sure you get this.",
)
await graph_client.me.messages.by_message_id('message-id').forward.post(request_body)
応答
次の例は応答を示しています。
HTTP/1.1 202 Accepted
POST https://graph.microsoft.com/beta/me/messages/AAMkADA1MTAAAH5JaLAAA=/forward
Content-Type: text/plain
Q29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9wa2NzNy1taW1lOw0KCW5hbWU9c21pbWUucDdtOw0KCXNtaW1lLXR5cGU9ZW52ZWxvcGVkLWRhdGENCk1pbWUtVmVyc2lvbjogMS4wIChNYWMgT1MgWCBNYWlsIDEzLjAgXCgzNjAxLjAuMTBcKSkNClN1YmplY3Q6IFJlOiBUZXN0aW5nIFMvTUlNRQ0KQ29udGVudC1EaXNwb3Np...
応答
次の例は応答を示しています。
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."
}
}