profilePhoto abrufen

Namespace: microsoft.graph

Rufen Sie das angegebene profilePhoto oder die Metadaten (profilePhoto-Eigenschaften) ab.

Die unterstützten Größen der HD-Fotos in Microsoft 365 sind wie folgt: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504 und 648x648. Fotos können eine beliebige Dimension sein, wenn sie in Microsoft Entra-ID gespeichert sind.

Sie können die Metadaten des größten verfügbaren Fotos abrufen oder eine Größe angeben, um die Metadaten für diese Fotogröße abzurufen. Wenn die von Ihnen gewünschte Größe nicht verfügbar ist, können Sie dennoch eine kleinere Größe erhalten, die der Benutzer hochgeladen und verfügbar gemacht hat. Wenn der Benutzer z. B. ein Foto mit einer Größe von 504 x 504 Pixeln hochlädt, steht das Foto mit Einer Größe von 648 x 648 zum Download zur Verfügung.

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

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

Berechtigungen

In den folgenden Tabellen sind die Berechtigungen mit den geringsten Berechtigungen aufgeführt, die zum Aufrufen dieser API für jeden unterstützten Ressourcentyp erforderlich sind. Befolgen Sie bewährte Methoden , um die geringsten Berechtigungen anzufordern. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Um das Profilfoto eines Kontakts abzurufen

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Contacts.Read Contacts.ReadWrite
Delegiert (persönliches Microsoft-Konto) Contacts.Read Contacts.ReadWrite
Anwendung Contacts.Read Contacts.ReadWrite

Um das Profilfoto einer Gruppe abzurufen

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Group.Read.All Group.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung Group.Read.All Group.ReadWrite.All

So rufen Sie die Profilfoto eines Teams ab

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Team.ReadBasic.All TeamSettings.Read.All, TeamSettings.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung Team.ReadBasic.All TeamSettings.Read.All, TeamSettings.ReadWrite.All

Um das Profilfoto eines Benutzers abzurufen

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) User.Read User.ReadBasic.All, User.Read.All, User.ReadWrite, User.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) User.Read User.ReadWrite
Anwendung User.Read.All User.ReadWrite.All

Hinweis

  • Der Metadatenvorgang wird für persönliche Microsoft-Konten nicht unterstützt.
  • Eine App mit nur Anwendungsberechtigungen kann nicht auf das Foto einer Gruppe zugreifen.
  • Das Abrufen des Fotos eines Benutzers mithilfe des Microsoft Graph-API wird derzeit in Azure AD B2C-Mandanten nicht unterstützt.

HTTP-Anforderung

Abrufen des Fotos

GET /me/photo/$value
GET /users/{id | userPrincipalName}/photo/$value
GET /groups/{id}/photo/$value
GET /me/contacts/{id}/photo/$value
GET /users/{id | userPrincipalName}/contacts/{id}/photo/$value
GET /me/contactfolders/{contactFolderId}/contacts/{id}/photo/$value
GET /users/{id | userPrincipalName}/contactfolders/{contactFolderId}/contacts/{id}/photo/$value
GET /team/{id}/photo/$value

Abrufen von Metadaten des Fotos

GET /me/photo
GET /me/photos
GET /users/{id | userPrincipalName}/photo
GET /groups/{id}/photo
GET /me/contacts/{id}/photo
GET /users/{id | userPrincipalName}/contacts/{id}/photo
GET /me/contactfolders/{contactFolderId}/contacts/{id}/photo
GET /users/{id | userPrincipalName}/contactfolders/{contactFolderId}/contacts/{id}/photo
GET /team/{id}/photo

Abrufen der Metadaten für eine bestimmte Fotogröße

GET /me/photos/{size}
GET /users/{id | userPrincipalName}/photos/{size}
GET /groups/{id}/photos/{size}

Pfadparameter

Parameter Typ Beschreibung
size String Eine Fotogröße. Die unterstützten Größen der HD-Fotos in Microsoft 365 sind wie folgt: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504 und 648x648. Fotos können eine beliebige Dimension sein, wenn sie in Microsoft Entra-ID gespeichert sind.

Optionale Abfrageparameter

Diese Methode unterstützt die OData-Abfrageparameter zur Anpassung der Antwort.

Anforderungsheader

Name Typ Beschreibung
Authorization string Bearer {token}. Erforderlich.

Anforderungstext

Geben Sie keinen Anforderungstext für diese Methode an.

Antwort

Antwort für Abrufen des Fotos

Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK und binäre Daten des angeforderten Fotos zurückgegeben. Wenn kein Foto vorhanden ist, gibt der Vorgang 404 Not Found zurück.

Antwort für Abrufen der Metadaten des Fotos

Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK und das profilePhoto-Objekt im Antworttext zurückgegeben.

Beispiele

Beispiel 1: Abrufen des Fotos für den angemeldeten Benutzer in der größten verfügbaren Größe

Anforderung

GET https://graph.microsoft.com/v1.0/me/photo/$value

Antwort

Enthält die binären Daten des angeforderten Fotos. Der HTTP-Antwortcode ist 200.

HTTP/1.1 200 OK

Beispiel 2: Abrufen des 48x48-Fotos für den angemeldeten Benutzer

Anforderung

GET https://graph.microsoft.com/v1.0/me/photos/48x48/$value
Content-Type: image/jpg

Hinweis

Um eine feste Größe für das Ausgabefoto sicherzustellen, verwenden Sie den dedizierten Endpunkt für Fotos (/Fotos) mit festen Größen, anstatt sich auf den Standardfotoendpunkt (/photo) zu verlassen, der das größte verfügbare Foto bereitstellt.

Antwort

Enthält die binären Daten des angeforderten 48x48-Fotos. Der HTTP-Antwortcode ist 200.

HTTP/1.1 200 OK

Beispiel 3: Abrufen der Metadaten des Benutzerfotos des angemeldeten Benutzers

Anforderung

GET https://graph.microsoft.com/v1.0/me/photo

Antwort

Die folgenden Antwortdaten zeigen die Metadaten des Fotos.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/photo/$entity",
    "@odata.id": "https://graph.microsoft.com/v1.0/users('ddfcd489-628b-7d04-b48b-20075df800e5@1717622f-1d94-c0d4-9d74-f907ad6677b4')/photo",
    "@odata.mediaContentType": "image/jpeg",
    "@odata.mediaEtag": "\"BA09D118\"",
    "id": "240x240",
    "width": 240,
    "height": 240
}

Die folgenden Antwortdaten zeigen die Inhalte einer Antwort, wenn für den Benutzer noch kein Foto hochgeladen wurde.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/photo/$entity",
    "@odata.id": "https://graph.microsoft.com/v1.0/users('ddfcd489-628b-7d04-b48b-20075df800e5@1717622f-1d94-c0d4-9d74-f907ad6677b4')/photo",
    "@odata.mediaContentType": "image/gif",
    "@odata.mediaEtag": "",
    "id": "1x1",
    "width": 1,
    "height": 1
}

Beispiel 4: Abrufen der Metadaten des Teamfotos

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Abrufen der Metadaten des Teamfotos.

GET https://graph.microsoft.com/v1.0/teams/172b0cce-e65d-44ce-9a49-91d9f2e8491e/photo

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#teams('172b0cce-e65d-44ce-9a49-91d9f2e8491e')/photo/$entity",
    "@odata.id": "https://graph.microsoft.com/v1.0/teams('172b0cce-e65d-44ce-9a49-91d9f2e8491e')/photo",
    "@odata.mediaContentType": "image/jpeg",
    "@odata.mediaEtag": "\"BA09D118\"",
    "id": "240X240",
    "width": 240,
    "height": 240
}

Beispiel 5: Abrufen der Binärdaten des Teamfotos

Das folgende Beispiel zeigt eine Anforderung zum Abrufen der Binärdaten des Teamfotos.

Anforderung

GET https://graph.microsoft.com/v1.0/teams/172b0cce-e65d-44ce-9a49-91d9f2e8491e/photo/$value

Antwort

Enthält die binären Daten des angeforderten Fotos. Der HTTP-Antwortcode ist 200.

HTTP/1.1 200 OK

Verwenden der Binärdaten des angeforderten Fotos

Wenn Sie den /photo/$value Endpunkt zum Abrufen der Binärdaten für eine Profilfoto verwenden, müssen Sie die Daten in eine Base64-Zeichenfolge konvertieren, um sie als E-Mail-Anlage hinzuzufügen. Das folgende JavaScript-Beispiel zeigt das Erstellen eines Arrays, das Sie als Wert des Attachments-Parameters einer Outlook-Nachricht übergeben können.

const attachments = [{
  '@odata.type': '#microsoft.graph.fileAttachment',
  ContentBytes: file.toString('base64'),
  Name: 'mypic.jpg'
}];

Details zur Implementierung finden Sie im Microsoft Graph Connect-Beispiel für Node.js.

Wenn Sie das Bild auf einer Webseite anzeigen möchten, erstellen Sie ein Objekt im Arbeitsspeicher aus dem Bild, und verwenden Sie das Objekt als Quelle eines Bildelements. Im folgenden JavaScript-Beispiel wird dieser Vorgang veranschaulicht.

const url = window.URL || window.webkitURL;
const blobUrl = url.createObjectURL(image.data);
document.getElementById(imageElement).setAttribute("src", blobUrl);