Freigeben über


user: sendMail

Namespace: microsoft.graph

Wichtig

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.

Senden Sie die im Anforderungstext angegebene Nachricht im JSON- oder MIME-Format.

Wenn Sie das JSON-Format verwenden, können Sie eine Anlage einschließen und eine Erwähnung verwenden, um einen anderen Benutzer in der neuen Nachricht aufzurufen.

Bei Verwendung des MIME-Formats:

  • Geben Sie die entsprechenden Internetnachrichtenkopfzeilen und den MIME-Inhalt an, die im Anforderungstext alle im Base64-Format codiert sind.
  • Fügen Sie dem MIME-Inhalt sämtliche Anlagen und S/MIME-Eigenschaften hinzu.

Bei dieser Methode wird die Nachricht im Ordner Gesendete Elemente gespeichert.

Alternativ können Sie einen Nachrichtenentwurf erstellen, der zu einem späteren Zeitpunkt gesendet werden soll.

Weitere Informationen zu den Schritten, die im Back-End ausgeführt werden müssen, bevor eine E-Mail an Empfänger übermittelt wird, finden Sie hier.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

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/sendMail
POST /users/{id | userPrincipalName}/sendMail

Anforderungsheader

Name Typ Beschreibung
Authorization string Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type string Die Art der Daten im Textkörper einer Entität. Erforderlich.
Verwenden Sie application/json für ein JSON-Objekt und text/plain für MIME-Inhalt.

Anforderungstext

Geben Sie bei Verwendung des JSON-Formats ein JSON-Objekt mit den folgenden Parametern an.

Parameter Typ Beschreibung
Nachricht message Die zu sendende Nachricht. Erforderlich.
SaveToSentItems Boolean ,Gibt an, ob die Nachricht im Ordner „Gesendete Elemente“ gespeichert werden soll. Geben Sie es nur an, wenn der Parameter false ist; der Standardwert true ist. Optional.

So rufen Sie mithilfe von Erwähnung einen anderen Benutzer in der neuen Nachricht auf:

  • Schließen Sie die erforderliche toRecipients-Eigenschaft , die Mentions-Eigenschaft und alle beschreibbaren Nachrichteneigenschaften in den Anforderungstext ein.
  • Für jede Erwähnung in der Mentions-Eigenschaft müssen Sie die erwähnte Eigenschaft angeben.

Geben Sie bei der Angabe des Texts im MIME-Format den MIME-Inhalt als eine Base64-codierte Zeichenfolge im Anforderungstext an. Schließen Sie keine Parameter ein.

Antwort

Wenn die Methode erfolgreich verläuft, wird der Antwortcode 202 Accepted zurückgegeben. Es gibt nichts im Antworttext zurück.

Hinweis: Ein 202 Accepted Antwortcode gibt an, dass die Anforderung akzeptiert wurde. Er gibt jedoch nicht an, dass die Anforderungsverarbeitung abgeschlossen wurde. Die Zustellung der Nachricht unterliegt den Einschränkungen und Einschränkungen von Exchange Online.

Wenn der Anforderungstext falsch formatierten MIME-Inhalt enthält, gibt diese Methode die folgende Fehlermeldung zurück 400 Bad request : "Ungültige Base64-Zeichenfolge für MIME-Inhalt."

Beispiele

Beispiel 1: Senden Sie eine neue E-Mail im JSON-Format

Anforderung

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

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

Antwort

HTTP/1.1 202 Accepted

Beispiel 2: Senden einer Nachricht, die eine @-Erwähnung enthält

Dieses Beispiel zeigt eine Nachricht des angemeldeten Benutzers an Samantha Booth. Die Nachricht enthält auch eine Erwähnung eines anderen Benutzers, Dana Swope.

Anforderung

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

{
  "message": {
    "subject": "Project kickoff",
    "toRecipients": [
      {
        "emailAddress": {
          "name": "Samantha Booth",
          "address": "samanthab@contoso.com"
        }
      }
    ],
    "mentions": [
      {
        "mentioned": {
          "name": "Dana Swope",
          "address": "danas@contoso.com"
        }
      }
    ]
  }
}

Antwort

HTTP/1.1 202 Accepted

Beispiel 3: Senden einer Nachricht, die benutzerdefinierte Internetnachrichtenkopfzeilen enthält

Anforderung

POST https://graph.microsoft.com/beta/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.com"
        }
      }
    ],
    "internetMessageHeaders": [
      {
        "name": "x-custom-header-group-name",
        "value": "Nevada"
      },
      {
        "name": "x-custom-header-group-id",
        "value": "NV001"
      }
    ]
  }
}

Antwort

HTTP/1.1 202 Accepted

Beispiel 4: Sendet eine Nachricht mit einer Dateianlage

Anforderung

POST https://graph.microsoft.com/beta/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.com"
        }
      }
    ],
    "attachments": [
      {
        "@odata.type": "#microsoft.graph.fileAttachment",
        "name": "attachment.txt",
        "contentType": "text/plain",
        "contentBytes": "SGVsbG8gV29ybGQh"
      }
    ]
  }
}

Antwort

HTTP/1.1 202 Accepted

Beispiel 5: Senden einer neuen Nachricht im MIME-Format

Anforderung

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

RnJvbTogQWRlbGUgVmFuY2UgPEFkZWxlVkBjb250b3NvLmNvbT4KVG86IEFsZXggV2lsYmVyIDxB
bGV4V0Bjb250b3NvLmNvbT4KU3ViamVjdDpUZXN0IE1lc3NhZ2UKQ29udGVudC1UeXBlOiBtdWx0
aXBhcnQvbWl4ZWQ7Cglib3VuZGFyeT0iXzAwNF9UWVpQUjA0TUI2OTgxNzNGRDAwMjE1MkQ1QURC
OEZCNDdDOEJDQVRZWlBSMDRNQjY5ODFhcGNwXyIKTUlNRS1WZXJzaW9uOiAxLjAKCi0tXzAwNF9U
WVpQUjA0TUI2OTgxNzNGRDAwMjE1MkQ1QURCOEZCNDdDOEJDQVRZWlBSMDRNQjY5ODFhcGNwXwpD
b250ZW50LVR5cGU6IG11bHRpcGFydC9hbHRlcm5hdGl2ZTsKCWJvdW5kYXJ5PSJfMDAwX1RZWlBS
MDRNQjY5ODE3M0ZEMDAyMTUyRDVBREI4RkI0N0M4QkNBVFlaUFIwNE1CNjk4MWFwY3BfIgoKLS1f
MDAwX1RZWlBSMDRNQjY5ODE3M0ZEMDAyMTUyRDVBREI4RkI0N0M4QkNBVFlaUFIwNE1CNjk4MWFw
Y3BfCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iaXNvLTg4NTktMSIKQ29udGVu
dC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQoKdGVzdCB0ZXh0IGJvZHkKCgot
LV8wMDBfVFlaUFIwNE1CNjk4MTczRkQwMDIxNTJENUFEQjhGQjQ3QzhCQ0FUWVpQUjA0TUI2OTgx
YXBjcF8KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9Imlzby04ODU5LTEiCkNvbnRl
bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKCjxodG1sPgo8aGVhZD4KPC9o
ZWFkPgo8Ym9keT4KdGVzdCBodG1sIGJvZHkKPC9ib2R5Pgo8L2h0bWw+CgotLV8wMDBfVFlaUFIw
NE1CNjk4MTczRkQwMDIxNTJENUFEQjhGQjQ3QzhCQ0FUWVpQUjA0TUI2OTgxYXBjcF8tLQoKLS1f
MDA0X1RZWlBSMDRNQjY5ODE3M0ZEMDAyMTUyRDVBREI4RkI0N0M4QkNBVFlaUFIwNE1CNjk4MWFw
Y3BfCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsKQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNo
bWVudDsKICAgICAgICBmaWxlbmFtZT0idGVzdC50eHQiCgp0aGlzIGlzIHRoZSBhdHRhY2htZW50
IHRleHQKCi0tXzAwNF9UWVpQUjA0TUI2OTgxNzNGRDAwMjE1MkQ1QURCOEZCNDdDOEJDQVRZWlBS
MDRNQjY5ODFhcGNwXy0t

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."
  }
}

Beispiel 6: Senden einer neuen Nachricht, die zur Nachverfolgung gekennzeichnet ist

Anforderung

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

{
  "subject": "Please respond by Friday",
  "toRecipients": [
    {
      "emailAddress": {
        "address": "meganb@contoso.com"
      }
    }
  ],
  "flag": {
    "flagStatus": "flagged",
    "startDateTime": {
      "dateTime": "2023-08-30T12:13:00",
      "timeZone": "Eastern Standard Time"
    },
    "dueDateTime": {
      "dateTime": "2023-09-01T17:00:00",
      "timeZone": "Eastern Standard Time"
    }
  }
}

Antwort

HTTP/1.1 202 Accepted