Como integrar Copilot Actions com Microsoft Graph

A integração entre Copilot Actions, Power Automate e Microsoft Graph permite ir além de respostas inteligentes: ela viabiliza ações reais no M365, como criar grupos, consultar usuários, enviar e-mails e manipular dados corporativos.
Neste artigo, você verá como construir chamadas HTTP de baixo nível para o Graph dentro do Power Automate, entendendo autenticação, headers, payloads, tratamento de erros e boas práticas — exatamente o que o Copilot executa “por baixo dos panos”.
1. Criando o App Registration no Entra ID
Antes do Flow, é necessário registrar a aplicação:
- Acesse Microsoft Entra Admin Center
- Vá em App registrations → New registration
- Defina:
- Nome da aplicação
- Tenant (Single tenant, na maioria dos casos)
- Gere um Client Secret ou, preferencialmente, um Certificado
- Em API Permissions, adicione permissões do Microsoft Graph
Exemplos de permissões (Application)
- User.Read.All
- Group.Read.All
- Sites.Read.All
- Mail.Send (uso criterioso)
Finalize com Admin Consent.




2. Criando o Flow do Copilot Action no Power Automate
Crie um Cloud Flow com o gatilho de Copilot Action (ou Run a flow from Copilot).
Boas práticas de inputs
Defina parâmetros claros, por exemplo:
- userUpn
- groupId
- actionType
- emailTo
Esses valores virão diretamente do prompt do Copilot.

3. Obtendo o token OAuth 2.0 (Client Credentials)
Ação: HTTP
Method: POST
URL: https://login.microsoftonline.com/{TENANT_ID}/oauth2/v2.0/token
Headers
Content-Type: application/x-www-form-urlencoded
Body
client_id={CLIENT_ID}
&client_secret={CLIENT_SECRET}
&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default
&grant_type=client_credentialsA resposta conterá o access_token.
Use Parse JSON para extraí-lo.
Dica: armazene CLIENT_ID, CLIENT_SECRET e TENANT_ID em Environment Variables ou Azure Key Vault.

4. Construindo a chamada HTTP para o Microsoft Graph
Headers obrigatórios
Authorization: Bearer {access_token}
Content-Type: application/jsonExemplo 1: Buscar dados de um usuário
Method: GET
URL: https://graph.microsoft.com/v1.0/users/{userUpn}?$select=id,displayName,mail,jobTitle
Esse padrão é muito usado para Copilots contextuais, que ajustam respostas conforme o perfil do usuário.

Exemplo 2: Adicionar usuário a um grupo
Method: POST
URL: https://graph.microsoft.com/v1.0/groups/{groupId}/members/$ref
Body:
{
"@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/{userId}"
}
Exemplo 3: Enviar e-mail via Graph (Application Permission)
Method: POST
URL: https://graph.microsoft.com/v1.0/users/{fromUser}/sendMail
Body:
{
"message": {
"subject": "Ação executada pelo Copilot",
"body": {
"contentType": "HTML",
"content": "<p>Processo concluído com sucesso.</p>"
},
"toRecipients": [
{
"emailAddress": {
"address": "destinatario@empresa.com"
}
}
]
},
"saveToSentItems": true
}
5. Tratando erros e throttling do Microsoft Graph
Erros comuns
- 401 / 403 → Permissão incorreta ou token inválido
- 404 → Recurso inexistente
- 429 → Throttling (limite de requisições)
Boas práticas no Power Automate
- Ative Retry Policy = Exponential
- Para 429, respeite o header:
Retry-After
- Evite loops agressivos (isso piora o throttling)
Conclusão
Construir chamadas HTTP de baixo nível para o Microsoft Graph dentro do Power Automate é o que transforma o Copilot em uma ferramenta de execução real, não apenas um assistente de texto.
Com:
- OAuth bem configurado
- Permissões corretas
- Tratamento de erros
- Payloads controlados
Você cria Copilot Actions seguras, escaláveis e auditáveis.
Quer levar o Copilot além do prompt?
Desenvolvemos ações reais com Copilot + Power Automate + Microsoft Graph, usando autenticação OAuth, controle de permissões e chamadas HTTP de baixo nível.
Entre em contato
Luiz Antonio Sgargeta é sócio fundador e CEO da Trinapse, consultoria brasileira de Microsoft 365 com quase duas décadas de operação, acumula mais de 20 anos em desenvolvimento de software e em ambientes corporativos de alta complexidade.
Ver maisVer menos
Trabalha com SharePoint desde o SharePoint Portal Server 2003 e com .NET desde a versão 1.0. Acompanhou a plataforma em todas as suas reinvenções, do portal de documentos on-premises ao SharePoint Online dentro do Microsoft 365, o que dá a ele uma leitura rara sobre o que muda de verdade e o que é apenas nome novo para o mesmo problema.
No início da carreira atuou em uma das maiores operações de e-commerce do país, em sistemas que não toleram degradação de performance nem indisponibilidade, essa origem definiu o critério que ele aplica até hoje: solução boa é a que sustenta volume real, integra com o legado que já existe e não quebra no pico.
Depois disso, passou por praticamente todo tipo de projeto corporativo, de portais e intranets de milhares de usuários a integrações críticas e automação de processos de ponta a ponta, sempre em grandes empresas e em desafios de alta exigência.
A marca do trabalho dele é a tradução entre tecnologia e negócio, levanta a necessidade real por trás do pedido do cliente, questiona o processo antes de automatizá-lo e desenha a solução pelo resultado esperado, não pela ferramenta disponível, é o que permite conversar com a diretoria sobre retorno e com o time técnico sobre arquitetura na mesma reunião.
Hoje lidera a frente comercial e estratégica da Trinapse e conduz a empresa no novo ciclo da inteligência artificial, com foco em agentes de IA e operação de processos assistida por IA para cooperativas de crédito, agronegócio e indústria. Escreve no blog da Trinapse desde 2019, com mais de 450 artigos sobre IA, SharePoint, Power Platform, Modern Workplace e transformação de processos, sempre a partir de projeto entregue e não de teoria.



