Пространство имен: microsoft.graph
Пересылайте сообщение в формате JSON или MIME.
При использовании формата JSON можно:
- Укажите комментарий или свойство
message
body параметра. Если указать оба варианта, вы получите ошибку HTTP 400 Bad Request.
- Укажите параметр
toRecipients
или свойство message
toRecipients параметра. При указании обоих или при указании ни того, ни другого не будет возвращена ошибка HTTP 400 Bad Request.
При использовании формата MIME:
Этот метод сохраняет сообщение в папке Отправленные.
Кроме того, можно создать черновик для пересылки сообщения и отправить его позже.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
✅ |
✅ |
✅ |
✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
Делегированные (рабочая или учебная учетная запись) |
Mail.Send |
Недоступно. |
Делегированные (личная учетная запись Майкрософт) |
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 |
Bearer {token}. Обязательный |
Content-Type |
string |
Характер данных в теле объекта. Обязательно. Используйте application/json для объекта JSON и text/plain для содержимого MIME. |
Текст запроса
При использовании формата JSON предоставьте объект JSON в тексте запроса со следующими параметрами.
Параметр |
Тип |
Описание |
comment |
String |
Добавляемый комментарий. Может быть пустой строкой. |
toRecipients |
Коллекция объектов Recipient |
Список получателей. |
При указании текста в формате MIME укажите содержимое MIME с применимыми заголовками сообщений Интернета ("Кому", "Копия", "Скрытая копия", "Тема"), все закодированные сообщения в формате Base64 в тексте запроса.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 202 Accepted
. Он не возвращает ничего в теле ответа.
Если текст запроса содержит неправильно отформатированное содержимое MIME, этот метод возвращает 400 Bad request
и следующее сообщение об ошибке: "Недопустимая строка Base 64 для содержимого MIME".
Примеры
Ниже приведен пример вызова этого API.
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/v1.0/me/messages/{id}/forward
Content-type: application/json
{
"comment": "comment-value",
"toRecipients": [
{
"emailAddress": {
"name": "name-value",
"address": "address-value"
}
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Me.Messages.Item.Forward;
using Microsoft.Graph.Models;
var requestBody = new ForwardPostRequestBody
{
Comment = "comment-value",
ToRecipients = new List<Recipient>
{
new Recipient
{
EmailAddress = new EmailAddress
{
Name = "name-value",
Address = "address-value",
},
},
},
};
// 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);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
mgc users messages forward post --user-id {user-id} --message-id {message-id} --body '{\
"comment": "comment-value",\
"toRecipients": [\
{\
"emailAddress": {\
"name": "name-value",\
"address": "address-value"\
}\
}\
]\
}\
'
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphusers.NewItemForwardPostRequestBody()
comment := "comment-value"
requestBody.SetComment(&comment)
recipient := graphmodels.NewRecipient()
emailAddress := graphmodels.NewEmailAddress()
name := "name-value"
emailAddress.SetName(&name)
address := "address-value"
emailAddress.SetAddress(&address)
recipient.SetEmailAddress(emailAddress)
toRecipients := []graphmodels.Recipientable {
recipient,
}
requestBody.SetToRecipients(toRecipients)
// 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)
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.messages.item.forward.ForwardPostRequestBody forwardPostRequestBody = new com.microsoft.graph.users.item.messages.item.forward.ForwardPostRequestBody();
forwardPostRequestBody.setComment("comment-value");
LinkedList<Recipient> toRecipients = new LinkedList<Recipient>();
Recipient recipient = new Recipient();
EmailAddress emailAddress = new EmailAddress();
emailAddress.setName("name-value");
emailAddress.setAddress("address-value");
recipient.setEmailAddress(emailAddress);
toRecipients.add(recipient);
forwardPostRequestBody.setToRecipients(toRecipients);
graphClient.me().messages().byMessageId("{message-id}").forward().post(forwardPostRequestBody);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const forward = {
comment: 'comment-value',
toRecipients: [
{
emailAddress: {
name: 'name-value',
address: 'address-value'
}
}
]
};
await client.api('/me/messages/{id}/forward')
.post(forward);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\Messages\Item\Forward\ForwardPostRequestBody;
use Microsoft\Graph\Generated\Models\Recipient;
use Microsoft\Graph\Generated\Models\EmailAddress;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ForwardPostRequestBody();
$requestBody->setComment('comment-value');
$toRecipientsRecipient1 = new Recipient();
$toRecipientsRecipient1EmailAddress = new EmailAddress();
$toRecipientsRecipient1EmailAddress->setName('name-value');
$toRecipientsRecipient1EmailAddress->setAddress('address-value');
$toRecipientsRecipient1->setEmailAddress($toRecipientsRecipient1EmailAddress);
$toRecipientsArray []= $toRecipientsRecipient1;
$requestBody->setToRecipients($toRecipientsArray);
$graphServiceClient->me()->messages()->byMessageId('message-id')->forward()->post($requestBody)->wait();
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Import-Module Microsoft.Graph.Mail
$params = @{
comment = "comment-value"
toRecipients = @(
@{
emailAddress = @{
name = "name-value"
address = "address-value"
}
}
)
}
# A UPN can also be used as -UserId.
Invoke-MgForwardUserMessage -UserId $userId -MessageId $messageId -BodyParameter $params
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.messages.item.forward.forward_post_request_body import ForwardPostRequestBody
from msgraph.generated.models.recipient import Recipient
from msgraph.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(
comment = "comment-value",
to_recipients = [
Recipient(
email_address = EmailAddress(
name = "name-value",
address = "address-value",
),
),
],
)
await graph_client.me.messages.by_message_id('message-id').forward.post(request_body)
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Отклик
Ниже показан пример отклика.
HTTP/1.1 202 Accepted
Пример 2. Пересылка сообщения с помощью содержимого MIME
Запрос
POST https://graph.microsoft.com/v1.0/me/messages/AAMkADA1MTAAAAqldOAAA=/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."
}
}