写真を取得するGet photo

指定した profilePhoto またはそのメタデータ (profilePhoto プロパティ) を取得します。Get the specified profilePhoto or its metadata (profilePhoto properties).

: バージョン 1.0 のこの操作では、ユーザーの職場用または学校用メールボックスのみがサポートされ、個人用メールボックスはサポートされていません。Note This operation in version 1.0 supports only a user's work or school mailboxes and not personal mailboxes.

Office 365 上でサポートされている HD Photo のサイズは次のとおりです: 48x48、64x64、96x96、120x120、240x240、360x360、432x432、504x504、648x648。The supported sizes of HD photos on Office 365 are as follows: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504, and 648x648. 写真が Azure Active Directory に格納されている場合は、サイズに関する制限はありません。Photos can be any dimension if they are stored in Azure Active Directory.

使用可能な最大の写真のメタデータを取得したり、サイズを指定してその写真サイズのメタデータを取得したりできます。You can get the metadata of the largest available photo, or specify a size to get the metadata for that photo size. 要求したサイズが使用できない場合でも、アップロードされて使用可能になっている、より小さいサイズを取得できます。If the size you request is not available, you can still get a smaller size that the user has uploaded and made available. たとえば、アップロードした写真が 504x504 ピクセルの場合は、648×648 を除くすべてのサイズの写真がダウンロード可能になります。For example, if the user uploads a photo that is 504x504 pixels, all but the 648x648 size of photo will be available for download.

アクセス許可Permissions

この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

アクセス許可の種類Permission type アクセス許可 (特権の小さいものから大きいものへ)Permissions (from least to most privileged)
委任 (職場または学校のアカウント)Delegated (work or school account) user リソースの場合:For user resource:
User.Read、User.ReadBasic.All、User.Read.All、User.ReadWrite、User.ReadWrite.AllUser.Read, User.ReadBasic.All, User.Read.All, User.ReadWrite, User.ReadWrite.All

group リソースの場合:For group resource:
Group.Read.All、Group.ReadWrite.AllGroup.Read.All, Group.ReadWrite.All

contact リソースの場合:For contact resource:
Contacts.Read、Contacts.ReadWriteContacts.Read, Contacts.ReadWrite
委任 (個人用 Microsoft アカウント)Delegated (personal Microsoft account) サポートされていませんNot supported
アプリケーションApplication user リソースの場合:For user resource:
User.Read.All、User.ReadWrite.AllUser.Read.All, User.ReadWrite.All

group リソースの場合:For group resource:
Group.Read.All、Group.ReadWrite.AllGroup.Read.All, Group.ReadWrite.All

contact リソースの場合:For contact resource:
Contacts.Read、Contacts.ReadWriteContacts.Read, Contacts.ReadWrite

注: 現在のところ、アプリケーションのアクセス許可を使用するグループの写真へのアクセスに関する「既知の問題」があります。Note: There is currently a known issue with accessing group photos using application permissions.

HTTP 要求HTTP request

写真を取得するGet the photo

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 the metadata of the photo

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 the metadata for a specific photo size

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

パス パラメーターPath parameters

パラメーターParameter Type 説明Description
サイズsize StringString 写真のサイズ。A photo size. Office 365 上でサポートされている HD Photo のサイズは次のとおりです: 48x48、64x64、96x96、120x120、240x240、360x360、432x432、504x504、648x648。The supported sizes of HD photos on Office 365 are as follows: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504, and 648x648. 写真が Azure Active Directory に格納されている場合は、サイズに関する制限はありません。Photos can be any dimension if they are stored in Azure Active Directory.

オプションのクエリ パラメーターOptional query parameters

このメソッドは、応答をカスタマイズするための OData クエリ パラメーターをサポートします。This method supports the OData query parameters to help customize the response.

要求ヘッダーRequest headers

名前Name 種類Type 説明Description
AuthorizationAuthorization stringstring ベアラー {トークン}。必須。Bearer {token}. Required.

要求本文Request body

このメソッドには、要求本文を指定しません。Do not supply a request body for this method.

応答Response

写真の取得に対する応答Response for getting the photo

成功した場合、このメソッドは 200 OK 応答コードと、要求した写真のバイナリ データを応答本文で返します。写真が存在しない場合、この操作により 404 Not Found が返されます。If successful, this method returns a 200 OK response code and binary data of the requested photo. If no photo exists, the operation returns 404 Not Found.

写真のメタデータの取得に対する応答Response for getting the metadata of the photo

成功した場合、このメソッドは 200 OK 応答コードと、応答本文で profilePhoto オブジェクトを返します。If successful, this method returns a 200 OK response code and profilePhoto object in the response body.

Examples

例 1: サインインしているユーザーの写真を利用可能な最大のサイズで取得します。Example 1: Get the photo for the signed-in user in the largest available size

要求Request
GET https://graph.microsoft.com/v1.0/me/photo/$value
応答Response

要求した写真のバイナリ データが含まれています。Contains the binary data of the requested photo. HTTP 応答コードは 200 です。The HTTP response code is 200.

例 2: サインインしているユーザーの 48x48 の写真を取得します。Example 2: Get the 48x48 photo for the signed-in use

要求Request
GET https://graph.microsoft.com/v1.0/me/photos/48x48/$value
Content-Type: image/jpg
応答Response

要求した 48x48 の写真のバイナリ データが含まれています。Contains the binary data of the requested 48x48 photo. HTTP 応答コードは 200 です。The HTTP response code is 200.

例 3: サインインしているユーザーのユーザー写真のメタデータを取得します。Example 3: Get the metadata of the user photo of the signed-in user

要求Request
GET https://graph.microsoft.com/v1.0/me/photo
応答Response

次の応答データは、写真のメタデータを示しています。The following response data shows the photo metadata.

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。Note: The response object shown here might be shortened for readability.

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
}

次の応答データは、そのユーザーの写真がまだアップロードされていないときの応答の内容を示しています。The following response data shows the contents of a response when a photo hasn't already been uploaded for the user.

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。Note: The response object shown here might be shortened for readability.

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
}

要求した写真のバイナリ データを使用するUsing the binary data of the requested photo

/photo/$value エンドポイントを使用してプロフィール写真のバイナリ データを取得するときに、そのデータを電子メールの添付ファイルとして追加するには、ベース 64 の文字列に変換する必要があります。When you use the /photo/$value endpoint to get the binary data for a profile photo, you'll need to convert the data into a base-64 string in order to add it as an email attachment. JavaScript で Outlook メッセージAttachments パラメーターの値として渡すことができる配列を作成する方法の例を次に示します。Here is an example in JavaScript of how to create an array that you can pass as the value of the Attachments parameter of an Outlook Message.

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

この例の実装については、「Node.js 用の Microsoft Graph Connect サンプル」を参照してください。See the Microsoft Graph Connect Sample for Node.js for an implementation of this example.

Web ページにイメージを表示する場合は、イメージからメモリ内オブジェクトを作成し、そのオブジェクトをイメージ要素のソースにします。If you want to display the image on a web page, create an in-memory object from the image and make that object the source of an image element. この操作の JavaScript の例を次に示します。Here is an example in JavaScript of this operation.

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