Enviar email

Namespace: microsoft.graph

Enviar a mensagem especificada no corpo da solicitação usando o formato JSON ou MIME.

Ao usar o formato JSON, você pode incluir um anexo de arquivo na mesma chamada de ação sendMail.

Ao utilizar o formato MIME:

Este método salva a mensagem na pasta Itens Enviados.

Alternativamente, criar um rascunho da mensagem para enviar mais tarde.

Permissões

Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, consulte Permissões.

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) Mail.Send
Delegado (conta pessoal da Microsoft) Mail.Send
Aplicativo Mail.Send

Solicitação HTTP

POST /me/sendMail
POST /users/{id | userPrincipalName}/sendMail

Cabeçalhos de solicitação

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 com os seguintes parâmetros.

Parâmetro Tipo Descrição
mensagem Message A mensagem a enviar. Obrigatório.
saveToSentItems Boolean Indica se é necessário salvar a mensagem nos Itens Enviados. Especifique-a somente se o parâmetro for false; o padrão é true. Opcional.

Ao especificar o corpo no formato MIME, forneça o conteúdo MIME como uma cadeia de caracteres codificada em base64 no corpo da solicitação.

Resposta

Se bem-sucedido, este método retorna um código de resposta 202 Accepted. 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

Exemplo 1: Enviar um novo email utilizando o formato JSON

Eis um exemplo de como chamar esta API.

Solicitação

Este é um exemplo da solicitação.

POST https://graph.microsoft.com/v1.0/me/sendMail
Content-type: application/json

{
  "message": {
    "subject": "Meet for lunch?",
    "body": {
      "contentType": "Text",
      "content": "The new cafeteria is open."
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "fannyd@contoso.onmicrosoft.com"
        }
      }
    ],
    "ccRecipients": [
      {
        "emailAddress": {
          "address": "danas@contoso.onmicrosoft.com"
        }
      }
    ]
  },
  "saveToSentItems": "false"
}

Resposta

Veja a seguir um exemplo da resposta.

HTTP/1.1 202 Accepted

Exemplo 2: Criar uma mensagem com cabeçalhos de mensagens personalizadas na Internet e enviar a mensagem

Solicitação

POST https://graph.microsoft.com/v1.0/me/sendMail
Content-type: application/json

{
  "message": {
    "subject": "9/9/2018: concert",
    "body": {
      "contentType": "HTML",
      "content": "The group represents Nevada."
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "AlexW@contoso.OnMicrosoft.com"
        }
      }
    ],
    "internetMessageHeaders":[
      {
        "name":"x-custom-header-group-name",
        "value":"Nevada"
      },
      {
        "name":"x-custom-header-group-id",
        "value":"NV001"
      }
    ]
  }
}

Resposta

Veja a seguir um exemplo da resposta.

HTTP/1.1 202 Accepted

Exemplo 3: Criar uma mensagem com um arquivo anexo e enviar a mensagem

Solicitação

POST https://graph.microsoft.com/v1.0/me/sendMail
Content-type: application/json

{
  "message": {
    "subject": "Meet for lunch?",
    "body": {
      "contentType": "Text",
      "content": "The new cafeteria is open."
    },
    "toRecipients": [
      {
        "emailAddress": {
          "address": "meganb@contoso.onmicrosoft.com"
        }
      }
    ],
    "attachments": [
      {
        "@odata.type": "#microsoft.graph.fileAttachment",
        "name": "attachment.txt",
        "contentType": "text/plain",
        "contentBytes": "SGVsbG8gV29ybGQh"
      }
    ]
  }
}

Resposta

Veja a seguir um exemplo da resposta.

HTTP/1.1 202 Accepted

Exemplo 4: Enviar uma nova mensagem utilizando o formato MIME

Solicitação

POST https://graph.microsoft.com/v1.0/me/sendMail
Content-type: text/plain

RnJvbTogQWxleCBXaWxiZXIgPEFsZXhXQGNvbnRvc28uY29tPgpUbzogTWVnYW4gQm93ZW4gPE1l
Z2FuQkBjb250b3NvLmNvbT4KU3ViamVjdDogSW50ZXJuYWwgUmVzdW1lIFN1Ym1pc3Npb246IFNh
bGVzIEFzc29jaWF0ZQpUaHJlYWQtVG9waWM6IEludGVybmFsIFJlc3VtZSBTdWJtaXNzaW9uOiBT
YWxlcyBBc3NvY2lhdGUKVGhyZWFkLUluZGV4OiBjb2RlY29kZWNvZGVoZXJlaGVyZWhlcmUKRGF0
ZTogU3VuLCAyOCBGZWIgMjAyMSAwNzoxNTowMCArMDAwMApNZXNzYWdlLUlEOgoJPE1XSFBSMTMw
MU1CMjAwMDAwMDAwRDc2RDlDMjgyMjAwMDA5QUQ5QTlASFdIUFIxMzAxTUIwMDAwLmNvZGVudW0u
cHJvZC5vdXRsb29rLmNvbT4KQ29udGVudC1MYW5ndWFnZTogZW4tVVMKWC1NUy1IYXMtQXR0YWNo
OgpYLU1TLVRORUYtQ29ycmVsYXRvcjoKWC1NUy1Fe

Resposta

Veja a seguir um exemplo da 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."
    }
}