Pular para o conteúdo
Skillpedia
APIs e servidores (backend)40 mil · #5241

msgraph-sdk

Ajuda seu agente a acessar dados do Microsoft 365. Ele pode se conectar a usuários, e-mails, calendários e arquivos.

O que ela faz

Esta ferramenta ajuda desenvolvedores a conectar seus programas aos dados do Microsoft 365, como e-mails, calendários e arquivos. Ela facilita a autenticação e a chamada de funções da Microsoft.

Quando usar

  • ✓Ao criar um programa que precisa ler e-mails de uma conta.
  • ✓Ao desenvolver um aplicativo que agenda reuniões no calendário.
  • ✓Ao construir um sistema que gerencia arquivos no OneDrive ou SharePoint.

Exemplo do que pedir para a IA

“Como faço para conectar meu aplicativo Python aos dados do usuário no Microsoft 365?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/github/awesome-copilot/blob/main/skills/msgraph-sdk/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/msgraph-sdk/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O programa usa um 'SDK', que é um conjunto de ferramentas pré-construídas, para falar com os serviços da Microsoft. Ele gerencia a segurança (quem pode acessar o quê) e as chamadas para obter ou modificar os dados.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add github/awesome-copilot --skill msgraph-sdk

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/msgraph-sdk/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

SDK do Microsoft Graph

Use esta habilidade ao integrar o Microsoft Graph em um aplicativo para acessar dados e serviços do Microsoft 365.

Sempre baseie a implementação na documentação atual do SDK do Microsoft Graph e na versão do SDK para a linguagem de destino, em vez de confiar apenas na memória.

Determine o idioma de destino primeiro

  1. Use o fluxo de trabalho .NET quando o projeto contiver arquivos .cs, .csproj ou .sln, ou quando o usuário solicitar orientação em C#. Siga references/dotnet.md.
  2. Use o fluxo de trabalho TypeScript / JavaScript quando o projeto contiver arquivos package.json, .ts ou .js, ou quando o usuário solicitar orientação em Node.js / navegador. Siga references/typescript.md.
  3. Use o fluxo de trabalho Python quando o projeto contiver .py, pyproject.toml ou requirements.txt, ou quando o usuário solicitar orientação em Python. Siga references/python.md.
  4. Se vários idiomas estiverem presentes, combine o idioma dos arquivos que estão sendo editados ou pergunte ao usuário.

Consulte sempre a documentação ao vivo

Autenticação — escolha o padrão correto

Selecionar o fluxo de autenticação errado é o erro mais comum na integração do Graph. Aplique esta árvore de decisão antes de escrever qualquer código de autenticação:

Cenário Fluxo a usar
Serviço em segundo plano / daemon sem usuário Credenciais do cliente (somente aplicativo)
Agente ou API agindo em nome de um usuário conectado On-Behalf-Of (OBO)
Aplicativo em execução no Azure (Function, Container App, VM) Identidade Gerenciada (preferível a segredos)
Ferramenta CLI ou script de desenvolvimento local Código do dispositivo ou navegador interativo
Aplicativo de página única (somente navegador) Código de autorização + PKCE
  • Nunca use credenciais de cliente quando um contexto de usuário for necessário — o Graph impõe isso no nível da permissão (aplicativo vs. delegado).
  • Prefira DefaultAzureCredential em aplicativos hospedados no Azure; ele tenta a identidade gerenciada primeiro e volta graciosamente para o desenvolvimento local.
  • Nunca codifique segredos. Use variáveis de ambiente, Azure Key Vault ou o Gerenciador de Segredos.

Padrões de uso do SDK principal

Construindo o cliente

Sempre construa GraphServiceClient uma vez e reutilize-o (ele gerencia o cache de tokens internamente).

Passe uma credencial da biblioteca Azure Identity — nunca construa clientes HTTP brutos manualmente.

Fazendo chamadas

  • Use a API de construtor fluente: client.Users[userId].Messages.GetAsync(...).
  • Sempre await chamadas assíncronas.
  • Especifique $select para limitar os campos retornados — o Graph retorna cargas úteis padrão grandes.
  • Use $filter no lado do servidor em vez de filtrar coleções retornadas na memória.
  • Use $expand para buscar recursos relacionados em uma única chamada quando os relacionamentos forem pequenos.

Paginação

O Graph pagina coleções. Nunca assuma que todos os itens chegam em uma única resposta:

  • Verifique se há um @odata.nextLink na resposta.
  • Use o auxiliar PageIterator do SDK (disponível em todos os três SDKs) para percorrer as páginas automaticamente.
  • Defina $top para controlar o tamanho da página (o máximo varia por recurso, geralmente 999).

Padrões avançados

Requisições em lote

Combine até 20 chamadas independentes do Graph em uma única requisição HTTP usando o endpoint $batch. Use o lote quando:

  • Inicializando dados para um painel ou agente que precisa de vários recursos antecipadamente.
  • Reduzindo a latência em operações de alta contagem de chamadas.

As respostas em lote chegam fora de ordem — combine-as pelo campo id que você atribuiu a cada requisição.

Consultas delta

Use consultas delta para sincronizar alterações incrementalmente em vez de consultar coleções completas:

  • Primeira chamada: GET /users/delta retorna todos os itens + um @odata.deltaLink.
  • Chamadas subsequentes: use o deltaLink para receber apenas o que mudou desde a última sincronização.
  • Suportado em: usuários, grupos, mensagens, eventos de calendário, canais do Teams e mais.
  • Armazene o deltaLink de forma durável (banco de dados, blob) entre as execuções de sincronização.

Notificações de alteração (webhooks)

Assine alterações de recursos com POST /subscriptions:

  • O Graph entrega eventos de alteração para sua URL de notificação HTTPS.
  • As assinaturas expiram — renove-as antes de expirationDateTime (o máximo varia por recurso; geralmente de 1 a 3 dias para e-mail/calendário, até 4230 minutos para usuários/grupos).

…

Perguntas frequentes

O que é Microsoft Graph?

É a porta de entrada para acessar dados e serviços do Microsoft 365, como usuários, e-mails, calendários e arquivos.

O que é um SDK?

É um kit de desenvolvimento de software, um conjunto de ferramentas que facilita a criação de programas que interagem com um serviço específico, neste caso, o Microsoft Graph.

Por que preciso me preocupar com autenticação?

A autenticação garante que apenas usuários ou aplicativos autorizados possam acessar os dados, protegendo informações sensíveis.

Detalhes

Descrição original do autor

Integrate Microsoft Graph SDK into any project — .NET, TypeScript/JavaScript, or Python. Covers auth patterns (client credentials, OBO, managed identity), SDK setup, calling Graph APIs, batching, delta queries, change notifications, throttling, and permission scopes. Use when accessing Microsoft 365 data (users, mail, calendar, Teams, files, SharePoint) from any application type.

repo: github/awesome-copilot

Popularidade

Estrelas no GitHub
40 mil
Posição no ranking
#5241
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas