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 Größe aufweisen, wenn sie in Azure Active Directory 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 angeforderte Größe nicht verfügbar ist, können Sie immer noch eine kleinere Größe abrufen, die der Benutzer hochgeladen und zur Verfügung gestellt hat. Wenn der Benutzer beispielsweise ein Foto mit 504x504 Pixeln hochlädt, sind alle Fotogrößen bis auf 648x648 zum Download verfügbar.

Berechtigungen

Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.

Um das Profilfoto eines Kontakts abzurufen

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
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 (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) Group.Read.All, Group.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt
Anwendung Group.Read.All, Group.ReadWrite.All

So rufen Sie das Profilfoto eines Teams ab

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) TeamReadBasicAll, TeamSettingsReadAll, TeamSettingsReadWriteAll
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt
Anwendung TeamReadBasicAll, TeamSettingsReadAll, TeamSettingsReadWriteAll

Um das Profilfoto eines Benutzers abzurufen

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
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

  1. Der Metadatenvorgang wird für persönliche Microsoft-Konten nicht unterstützt.
  2. Es gibt derzeit ein bekanntes Problem beim Zugriff auf Gruppenfotos mithilfe von Anwendungsberechtigungen.
  3. Das Abrufen eines Benutzerfotos mithilfe der 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 Größe aufweisen, wenn sie in Azure Active Directory 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 für diese Methode keinen Anforderungstext 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.

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

Antwort

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

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

Dies ist ein Beispiel für eine Anforderung zum Abrufen der Metadaten des Team-Fotos.

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

Antwort

Nachfolgend sehen Sie ein Beispiel der 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

Dies ist ein Beispiel für die 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.

Verwenden der Binärdaten des angeforderten Fotos

Wenn Sie den /photo/$value-Endpunkt zum Abrufen der Binärdaten für ein Profilfoto verwenden, müssen Sie die Daten in eine Base-64-Zeichenfolge konvertieren, damit sie als E-Mail-Anlage hinzugefügt werden können. Das folgende Beispiel in JavaScript 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'
}];

Unter Microsoft Graph Connect-Beispiel für Node.js finden Sie eine Implementierung dieses Beispiels.

Wenn Sie das Bild auf einer Webseite anzeigen möchten, erstellen Sie ein In-Memory-Objekt aus dem Bild, und machen Sie dieses Objekt zur Quelle eines Bildelements. Hier sehen Sie ein Beispiel für diesen Vorgang in JavaScript.

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