Usar o Microsoft Graph API para trabalhar com o Microsoft TeamsUse the Microsoft Graph API to work with Microsoft Teams

O Microsoft Teams é um espaço de trabalho baseado em chat no Office 365 que fornece acesso interno a calendários específicos, arquivos, anotações do OneNote, planos do Planner, cronogramas de turno e muito mais.Microsoft Teams is a chat-based workspace in Office 365 that provides built-in access to team-specific calendars, files, OneNote notes, Planner plans, Shifts schedules, and more.

Principais recursos no Microsoft Teams (visualização)Key resources in Microsoft Teams

ResourceResource MétodosMethods
teamteam Listar suas equipes, listar todas as equipes, criar, ler, atualizar, excluir, clonar, arquivar, cancelar o arquivamentoList your teams, list all teams, create, read, update, delete, clone, archive, unarchive
groupgroup Adicionar membro,  remover membro, adicionar proprietário,  remover proprietário, obter arquivos, obter bloco de anotações, obter planos, obter calendárioAdd member, remove member, add owner, remove owner, get files, get notebook, get plans, get calendar
channelchannel Listar, criar, ler, atualizar, excluirList, create, read, update, delete
teamsTabteamsTab Listar, criar, ler, atualizar, excluirList, create, read, update, delete
teamsAppteamsApp Listar, publicar, atualizar, removerList, publish, update, remove
teamsAppInstallationteamsAppInstallation Listar, instalar, atualizar, removerList, install, upgrade, remove
chatMessage (visualização)chatMessage (preview) Lista, enviar, lerList, send, read
Chamada (visualização)call (preview) Responder, rejeitar, redirecionar, ativar mudo, desfazer ativar mudo, atualizar metadados, alterar a função de compartilhamento de tela, listar participantes, convidar participantes, ativar mudo para todos os participantesAnswer, reject, redirect, mute, unmute, update metadata, change screen sharing role, list participants, invite participants, mute all participants
cronograma (visualização)schedule (preview) Criar ou substituir, obter, compartilharCreate or replace, get, share
schedulingGroup visualizaçãoschedulingGroup (preview) Criar, Listar, Obter, Substituir, ExcluirCreate, List, Get, Replace, Delete
turno (visualização)shift (preview) Criar, Listar, Obter, Substituir, ExcluirCreate, List, Get, Replace, Delete
Folga (visualização)timeOff (preview) Criar, Listar, Obter, Substituir, ExcluirCreate, List, Get, Replace, Delete
timeOffReason (visualização)timeOffReason (preview) Criar, Listar, Obter, Substituir, ExcluirCreate, List, Get, Replace, Delete

Equipes e gruposTeams and groups

Na Microsoft Graph, o Microsoft Teams é representado por um recurso de grupo.In Microsoft Graph, Microsoft Teams is represented by a group resource. Os grupos do Microsoft Teams e Office 365 atendem às várias necessidades de colaboração em grupo.Both Microsoft Teams and Office 365 groups address the various needs of group collaboration. Quase todos os recursos baseados em grupo se aplicam aos grupos do Microsoft Teams e do Office 365, como calendário de grupo, arquivos, anotações, fotos, planos e assim por diante.Almost all the group-based features apply to Microsoft Teams and Office 365 groups, such as group calendar, files, notes, photo, plans, and so on. A principal diferença entre uma equipe e um grupo do Office 365 é o modo de comunicação entre os membros.The main difference between a team and an Office 365 group is the mode of communication between members. Os membros da equipe se comunicam por meio de chat persistente no contexto de uma equipe específica.Team members communicate by persistent chat in the context of a specific team. Os membros do grupo do Office 365 se comunicam por conversas em grupo, que são conversas por email que ocorrem no contexto de um grupo no Outlook.Office 365 group members communicate by group conversations, which are email conversations that occur in the context of a group in Outlook.

Qualquer grupo que tenha uma equipe possui uma propriedade resourceProvisioningOptions que contém "Team".Any group that has a team has a resourceProvisioningOptions property that contains "Team".

Observação: a propriedade Group.resourceProvisioningOptions pode ser alterada.Note: The Group.resourceProvisioningOptions property can be changed. Não adicione ou remova "Team" dessa coleção; caso contrário, você obterá resultados incorretos ao listar todas as equipes.Do not add or remove "Team" from that collection; otherwise, you'll get incorrect results when you list all teams.

Veja a seguir as diferenças no nível da API entre equipes e grupos:The following are the differences at the API level between teams and groups:

Observação: Se você usar as APIs de grupo em um aplicativo Microsoft Teams, em vez de um aplicativo autônomo, por exemplo, como parte de uma guia ou um bot em execução no Microsoft Teams. Siga as orientações no artigo Uso do Microsoft Graph em suas páginas do Microsoft Teams.Note: If you use the groups API in a Microsoft Teams app rather than in a standalone app - for example as part of a tab or bot running in Microsoft Teams - follow the guidance in the article Using Microsoft Graph in your Microsoft Teams pages.

Alterações de associação no Microsoft TeamsMembership changes in Microsoft Teams

Para adicionar membros e proprietários a uma equipe, altere a associação do grupo com a mesma ID.To add members and owners to a team, change the membership of the group with the same ID.

Caso de usoUse case VerboVerb URLURL
Adicionar membroAdd member POSTPOST /groups/{id}/members/$ref/groups/{id}/members/$ref
Remover membroRemove member DELETEDELETE /groups/{id}/members/{userId}/$ref/groups/{id}/members/{userId}/$ref
Adicionar proprietárioAdd owner POSTPOST /groups/{id}/owners/$ref/groups/{id}/owners/$ref
Remover proprietárioRemove owner DELETEDELETE /groups/{id}/owners/{userId}/$ref/groups/{id}/owners/{userId}/$ref
Atualizar equipeUpdate team PATCHPATCH /teams/{id}/teams/{id}

Recomendamos que, ao adicionar um proprietário, você também adicione esse usuário como membro.We recommend that when you add an owner, you also add that user as a member. Se uma equipe tiver um proprietário que também não seja um membro, as alterações de propriedade e associação talvez não sejam imediatamente exibidas no Microsoft Teams.If a team has an owner who is not also a member, ownership and membership changes might not show up immediately in Microsoft Teams. Além disso, aplicativos e APIs diferentes tratam disso de maneira diferente.In addition, different apps and APIs will handle that differently. Por exemplo, o Microsoft Teams mostrará equipes das quais o usuário é membro ou proprietário, enquanto os cmdlets do PowerShell do Microsoft Teams e a API /me/joinedTeams mostrarão apenas as equipes das quais o usuário é membro.For example, Microsoft Teams will show teams that the user is either a member or an owner of, while the Microsoft Teams PowerShell cmdlets and the /me/joinedTeams API will only show teams the user is a member of. Para evitar confusão, adicione também todos os proprietários à lista de membros.To avoid confusion, add all owners to the members list as well.

Problema conhecido: quando DELETE /groups/{id}/owners é chamado, o usuário também é removido da lista /groups/{id}/members.Known issue: when DELETE /groups/{id}/owners is called, the user is also removed from the /groups/{id}/members list. Para contornar isso, recomendamos que você remova o usuário dos proprietários e membros, espere 10 segundos e adicione-os novamente aos membros.To work around this, we recommend that you remove the user from both owners and members, then wait 10 seconds, then add them back to members.

Ao adicionar e remover membros e proprietários, não coloque chaves { } ao redor da ID.When adding and removing members and owners, don't put braces { } around the ID.

VelocidadeSpeed SintaxeSyntax
RápidaFast https://graph.microsoft.com/v1.0/groups/02bd9fd6-8f93-4758-87c3-1fb73740a315/members/48d31887-5fad-4d73-a9f5-3c356e68a038/$refhttps://graph.microsoft.com/v1.0/groups/02bd9fd6-8f93-4758-87c3-1fb73740a315/members/48d31887-5fad-4d73-a9f5-3c356e68a038/$ref
LentoSlow https://graph.microsoft.com/v1.0/groups/{02bd9fd6-8f93-4758-87c3-1fb73740a315}/members/{48d31887-5fad-4d73-a9f5-3c356e68a038}/$refhttps://graph.microsoft.com/v1.0/groups/{02bd9fd6-8f93-4758-87c3-1fb73740a315}/members/{48d31887-5fad-4d73-a9f5-3c356e68a038}/$ref

Da mesma forma, se o userId na URL ou no conteúdo for expresso como um UPN, e não como um GUID, o desempenho será mais lento.Similarly, if the userId in the URL or payload is expressed as a UPN rather than as a GUID, the performance will be slower.

VelocidadeSpeed SintaxeSyntax
RápidaFast 48d31887-5fad-4d73-a9f5-3c356e68a03848d31887-5fad-4d73-a9f5-3c356e68a038
LentoSlow vitor@example.comjohn@example.com

Quando o caminho mais lento é executado, se um membro ou membro da equipe atual estiver conectado ao aplicativo/site do Microsoft Teams, a alteração será refletida em uma hora.When the slower path is taken, if a current team member or owner is signed in to the Microsoft Teams application/website, the change will be reflected within an hour. Se nenhum desses usuários estiver conectado ao aplicativo/site do Microsoft Teams, a alteração não será refletida até uma hora depois que um deles se conectar.If none of those users are signed in to the Microsoft Teams application/website, the change will not be reflected until an hour after one of them signs in.

Confira tambémSee also