Get profilePhoto
Namespace: microsoft.graph
Obtenha a profilePhoto específica ou seus metadados (propriedades profilePhoto).
Os tamanhos suportados das fotos em HD do Microsoft 365 são os seguintes: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504 e 648x648. As fotos podem ser de todos os tamanhos, desde que estejam armazenadas no Azure Active Directory.
Você pode obter os metadados da maior foto disponível ou especificar um tamanho para obter os metadados do tamanho dessa foto. Se o tamanho solicitado não estiver disponível, você ainda poderá obter um tamanho menor que o usuário carregou e disponibilizou. Por exemplo, se o usuário carrega uma foto de 504 x 504 pixels, tudo menos o tamanho 648 x 648 da foto estará disponível para download.
Permissões
Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.
Para recuperar a foto do perfil de um contato
| Tipo de permissão | Permissões (da com menos para a com mais privilégios) |
|---|---|
| Delegado (conta corporativa ou de estudante) | Contacts.Read, Contacts.ReadWrite |
| Delegado (conta pessoal da Microsoft) | Contacts.Read, Contacts.ReadWrite |
| Aplicativo | Contacts.Read, Contacts.ReadWrite |
Para recuperar a foto do perfil de um grupo
| Tipo de permissão | Permissões (da com menos para a com mais privilégios) |
|---|---|
| Delegado (conta corporativa ou de estudante) | Group.Read.All, Group.ReadWrite.All |
| Delegado (conta pessoal da Microsoft) | Sem suporte. |
| Aplicativo | Group.Read.All, Group.ReadWrite.All |
Para recuperar a foto de perfil de uma equipe
| Tipo de permissão | Permissões (da com menos para a com mais privilégios) |
|---|---|
| Delegado (conta corporativa ou de estudante) | TeamReadBasicAll, TeamSettingsReadAll, TeamSettingsReadWriteAll |
| Delegado (conta pessoal da Microsoft) | Sem suporte. |
| Aplicativo | TeamReadBasicAll, TeamSettingsReadAll, TeamSettingsReadWriteAll |
Para recuperar a foto do perfil de um usuário
| Tipo de permissão | Permissões (da com menos para a com mais privilégios) |
|---|---|
| Delegado (conta corporativa ou de estudante) | User.Read, User.ReadBasic.All, User.Read.All, User.ReadWrite, User.ReadWrite.All |
| Delegado (conta pessoal da Microsoft) | User.Read, User.ReadWrite |
| Aplicativo | User.Read.All, User.ReadWrite.All |
Observação
- Não há suporte para a operação de metadados em contas pessoais da Microsoft.
- Atualmente, há um problema conhecido ao acessar fotos de grupo usando permissões de aplicativos.
- Atualmente, não há suporte para a recuperação da foto de um usuário usando o Microsoft API do Graph em locatários Azure AD B2C.
Solicitação HTTP
Obter a foto
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
Obter os metadados da foto
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
Obter os metadados de um tamanho de página específica.
GET /me/photos/{size}
GET /users/{id | userPrincipalName}/photos/{size}
GET /groups/{id}/photos/{size}
Parâmetros do caminho
| Parâmetro | Tipo | Descrição |
|---|---|---|
| tamanho | Cadeia de caracteres | Um tamanho de foto. Os tamanhos suportados das fotos em HD do Microsoft 365 são os seguintes: 48x48, 64x64, 96x96, 120x120, 240x240, 360x360, 432x432, 504x504 e 648x648. As fotos podem ser de todos os tamanhos, desde que estejam armazenadas no Azure Active Directory. |
Parâmetros de consulta opcionais
Este método dá suporte a Parâmetros de consulta OData para ajudar a personalizar a resposta.
Cabeçalhos de solicitação
| Nome | Tipo | Descrição |
|---|---|---|
| Autorização | string | {token} de portador. Obrigatório. |
Corpo da solicitação
Não forneça um corpo de solicitação para esse método.
Resposta
Resposta para obter a foto
Se for bem-sucedido, este método retornará um código de resposta 200 OK e dados binários da foto solicitada. Se não existirem fotos, a operação retornará 404 Not Found.
Resposta para obter os metadados da foto
Se bem-sucedido, este método retorna o código de resposta 200 OK e o objeto profilePhoto no corpo da resposta.
Exemplos
Exemplo 1: Obter a foto do usuário conectado com o maior tamanho disponível
Solicitação
GET https://graph.microsoft.com/v1.0/me/photo/$value
Resposta
Contém os dados binários da foto solicitada. O código de resposta HTTP é 200.
Exemplo 2: Obtenha foto 48 x 48 para usuário conectado
Solicitação
GET https://graph.microsoft.com/v1.0/me/photos/48x48/$value
Content-Type: image/jpg
Resposta
Contém os dados binários da foto 48x48 solicitada. O código de resposta HTTP é 200.
Exemplo 3: Esta solicitação obtém os metadados da foto do usuário conectado.
Solicitação
GET https://graph.microsoft.com/v1.0/me/photo
Resposta
Os dados de resposta a seguir mostram os metadados da foto.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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
}
Os dados de resposta a seguir mostram o conteúdo de uma resposta quando uma foto ainda não foi carregada para o usuário.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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
}
Exemplo 4: Obter os metadados da foto da equipe
Solicitação
Aqui está um exemplo da solicitação para obter os metadados da foto da equipe.
GET https://graph.microsoft.com/v1.0/teams/172b0cce-e65d-44ce-9a49-91d9f2e8491e/photo
Resposta
Veja a seguir um exemplo da resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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
}
Exemplo 5: Obter os dados binários da foto da equipe
Aqui está um exemplo da solicitação para obter os dados binários da foto da equipe.
Solicitação
GET https://graph.microsoft.com/v1.0/teams/172b0cce-e65d-44ce-9a49-91d9f2e8491e/photo/$value
Resposta
Contém os dados binários da foto solicitada. O código de resposta HTTP é 200.
Usando os dados binários da foto solicitada
Ao usar o ponto de extremidade /photo/$value para obter os dados binários de uma foto de perfil, você precisa converter os dados em uma cadeia de caracteres da base 64 para adicioná-la como um anexo de email. Veja aqui um exemplo no JavaScript de como criar uma matriz que você pode passar como o valor do parâmetro Attachments de uma Mensagem do Outlook.
const attachments = [{
'@odata.type': '#microsoft.graph.fileAttachment',
ContentBytes: file.toString('base64'),
Name: 'mypic.jpg'
}];
Confira Amostra de conexão do Microsoft Graph para Node.js para ver uma implementação desse exemplo.
Se você quiser exibir a imagem em uma página da Web, crie um objeto na memória com base na imagem e torne esse objeto a origem de um elemento de imagem. Eis um exemplo em JavaScript dessa operação.
const url = window.URL || window.webkitURL;
const blobUrl = url.createObjectURL(image.data);
document.getElementById(imageElement).setAttribute("src", blobUrl);
Comentários
Enviar e exibir comentários de