Send-GraphMail #
ÜBERSICHT #
Versendet E-Mails über die Microsoft Graph API.
SYNTAX #
Send-GraphMail [-Token] <string> [[-FromEmail] <string>] [-To] <string[]> [[-Cc] <string[]>]
[[-Bcc] <string[]>] [-Subject] <string> [[-HtmlBody] <string>] [[-Attachments] <string[]>]
[[-InlineImages] <object[]>] [<CommonParameters>]
BESCHREIBUNG #
Send-GraphMail versendet HTML-formatierte E-Mails über die Microsoft Graph API. Das Access-Token wird extern über Get-GraphToken beschafft und als Parameter übergeben.
Mit -FromEmail wird der Endpunkt /users/{email}/sendMail verwendet (Service-Flow, Application Permission). Ohne -FromEmail wird /me/sendMail verwendet (User-Flow, delegierte Berechtigung, eigenes Postfach).
Ersetzt die bisherigen Funktionen Send-GraphMailService und Send-GraphMailUser.
PARAMETER #
-Token #
Type: string
Access-Token (Bearer) für die Graph API. Wird über Get-GraphToken beschafft.
-FromEmail #
Type: string
Absender-Adresse für den Service-Flow. Muss ein Exchange-Postfach oder eine Shared Mailbox sein, für die die App sendeberechtigt ist. Ohne diesen Parameter wird /me/sendMail verwendet (User-Flow, eigenes Postfach).
-To #
Type: string[]
Array mit Empfängeradressen (mindestens eine). Erlaubt auch komma-/semikolongetrennten String.
-Cc #
Type: string[]
Array mit CC-Empfängern (optional).
-Bcc #
Type: string[]
Array mit BCC-Empfängern (optional).
-Subject #
Type: string
Betreff der E-Mail.
-HtmlBody #
Type: string
Default: ''
HTML-formatierter Inhalt der E-Mail (optional, Default: leer).
-Attachments #
Type: string[]
Array mit Dateipfaden für optionale Anhänge.
-InlineImages #
Type: object[]
Array mit Inline-Bild-Objekten. Jedes Objekt benötigt mindestens die Eigenschaft Path. Optionale Eigenschaften: ContentId, FileName, MediaType.
AUSGABEN #
void
Erfolg oder Fehler werden als Konsolenausgabe dargestellt.
BEISPIELE #
# Service-Flow: Rechnung per E-Mail versenden
$token = Get-GraphToken -TenantId '54197dd8-9c79-46ca-9d1f-a6c260a7cfab' -ClientId 'c081dca9-2f08-475a-8691-5339e99ab42c' -ClientSecret 'Ihr~ClientSecret-hier'
Send-GraphMail -Token $token -FromEmail 'no-reply@firma.de' `
-To 'kunde@beispiel.de' -Subject 'Ihre Rechnung' `
-HtmlBody '<b>Siehe Anhang</b>' -Attachments 'C:\Temp\rechnung.pdf'
# User-Flow: E-Mail über eigenes Postfach senden
$token = Get-GraphToken -ClientId 'c081dca9-2f08-475a-8691-5339e99ab42c' -UserScope 'Mail.Send offline_access'
Send-GraphMail -Token $token -To 'empfaenger@firma.de' `
-Subject 'Test' -HtmlBody '<b>Hallo!</b>'
# Service-Flow mit CC und Inline-Bild
$token = Get-GraphToken -TenantId '54197dd8-9c79-46ca-9d1f-a6c260a7cfab' -ClientId 'c081dca9-2f08-475a-8691-5339e99ab42c' -ClientSecret 'Ihr~ClientSecret-hier'
$inlineImg = @{ Path = 'C:\Temp\logo.png'; ContentId = 'logo1' }
Send-GraphMail -Token $token -FromEmail 'info@firma.de' `
-To 'kunde@beispiel.de' -Cc 'chef@firma.de' `
-Subject 'Newsletter' `
-HtmlBody 'Unser Logo: <img src="cid:logo1">' `
-InlineImages @($inlineImg)
HINWEISE #
Ersetzt Send-GraphMailService und Send-GraphMailUser (ab v1.1). Das Token wird nicht mehr intern geholt, sondern extern über Get-GraphToken.