Namespace: microsoft.graph
Encaminhe uma mensagem usando o formato JSON ou MIME.
Ao usar o formato JSON, você pode:
- Especifique um comentário ou a propriedade do corpo do
message
parâmetro. Especificar ambos retornará um erro HTTP 400 - Solicitação incorreta.
- Especifique o
toRecipients
parâmetro ou a propriedade toRecipients do message
parâmetro. Especificar ambos ou nenhum retornará um erro HTTP 400 - Solicitação incorreta.
Ao utilizar o formato MIME:
Este método salva a mensagem na pasta Itens Enviados.
Como alternativa, crie um rascunho para encaminhar uma mensagem e envie-a posteriormente.
Essa API está disponível nas seguintes implantações nacionais de nuvem.
Serviço global |
Governo dos EUA L4 |
GOVERNO DOS EUA L5 (DOD) |
China operada pela 21Vianet |
✅ |
✅ |
✅ |
✅ |
Permissões
Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
Tipo de permissão |
Permissões menos privilegiadas |
Permissões privilegiadas mais altas |
Delegado (conta corporativa ou de estudante) |
Mail.Send |
Indisponível. |
Delegado (conta pessoal da Microsoft) |
Mail.Send |
Indisponível. |
Aplicativo |
Mail.Send |
Indisponível. |
Solicitação 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
Nome |
Tipo |
Descrição |
Autorização |
string |
{token} de portador. Obrigatório |
Content-Type |
string |
Natureza dos dados no corpo de uma entidade. Obrigatório. Use application/json para um objeto JSON e text/plain para conteúdo MIME. |
Corpo da solicitação
Ao usar o formato JSON, forneça um objeto JSON no corpo da solicitação com os parâmetros a seguir.
Parâmetro |
Tipo |
Descrição |
comment |
String |
Um comentário a incluir. Não pode ficar vazio. |
toRecipients |
Coleção Recipient |
A lista de destinatários. |
Ao especificar o corpo no formato MIME, forneça ao conteúdo MIME os cabeçalhos de mensagem da Internet aplicáveis ("Para", "CC", "CCO", "Assunto"), todos codificados no formato base64 no corpo da solicitação.
Resposta
Se bem sucedido, este método retorna um código de resposta 202 Accepted
. Ele não retorna nada no corpo da resposta.
Se o corpo da solicitação incluir conteúdo MIME malformado, este método retornará 400 Bad request
e a seguinte mensagem de erro: "Cadeia de caracteres base64 inválida para o conteúdo MIME".
Exemplos
Aqui está um exemplo de como chamar essa API.
Solicitação
O exemplo a seguir mostra uma solicitação.
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);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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"\
}\
}\
]\
}\
'
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do 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)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
O exemplo a seguir mostra a resposta.
HTTP/1.1 202 Accepted
Exemplo 2: encaminhar uma mensagem usando conteúdo MIME
Solicitação
POST https://graph.microsoft.com/v1.0/me/messages/AAMkADA1MTAAAAqldOAAA=/forward
Content-type: text/plain
Q29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9wa2NzNy1taW1lOw0KCW5hbWU9c21pbWUucDdtOw0KCXNtaW1lLXR5cGU9ZW52ZWxvcGVkLWRhdGENCk1pbWUtVmVyc2lvbjogMS4wIChNYWMgT1MgWCBNYWlsIDEzLjAgXCgzNjAxLjAuMTBcKSkNClN1YmplY3Q6IFJlOiBUZXN0aW5nIFMvTUlNRQ0KQ29udGVudC1EaXNwb3Np
Resposta
O exemplo a seguir mostra a resposta.
HTTP/1.1 202 Accepted
Se o corpo da solicitação incluir conteúdo MIME malformado, este método retornará a seguinte mensagem de erro.
HTTP/1.1 400 Bad Request
Content-type: application/json
{
"error": {
"code": "ErrorMimeContentInvalidBase64String",
"message": "Invalid base64 string for MIME content."
}
}