Dynamics do Zero ao PRO · Lição 42 de 48 · Módulo 6 — IA e Automação Avançada
LIÇÃO 42Integração com APIs Externas via Power Automate
Qualquer sistema com uma API REST pode trocar dados com o Dynamics — sem connector oficial, sem código personalizado. Esta lição cobre o padrão HTTP do Power Automate para chamar APIs externas, autenticar e mapear respostas JSON para campos do Dataverse.
📅 Módulo 6 — IA e Automação Avançada✍️ Pablo Maruk
🎯
Resultado desta lição
Ao final, você terá um fluxo que chama uma API REST externa (exemplo: serviço de CEP ou ERP), mapeia a resposta JSON e atualiza ou cria registros no Dynamics automaticamente.
Por que HTTP e não um connector
A ação HTTP — o canivete suíço do Power Automate
O Power Automate tem conectores para centenas de serviços. Mas quando o serviço não tem connector oficial — um ERP legado, uma API interna da empresa, um serviço de consulta de CNPJ — a ação HTTP Premium resolve.
→ New step → HTTP Method: POST / GET / PUT / PATCH / DELETE URI: URL completa do endpoint Headers: Content-Type, Authorization, etc. Body: JSON do payload (para POST/PUT)
Ação HTTP é Premium: Requer licença Power Automate Premium (antes chamada Per User Plan). A licença de Dynamics inclui Power Automate com conectores padrão — mas HTTP Premium pode exigir licença adicional dependendo do plano contratado.
Mão na massa
Passo a passo
Autenticar com OAuth 2.0
A maioria das APIs modernas usa Bearer Token. Configure a autenticação no header:
Para OAuth, adicione uma etapa anterior: HTTP POST para o endpoint de token: Body: grant_type=client_credentials&client_id=...&client_secret=...&scope=... Salve o resultado em varToken para usar nos headers das chamadas seguintes.
Chamar a API e parsear o JSON
→ HTTP GET → URI: https://api.exemplo.com/produtos/@{triggerBody()?['codigo']}
Após a ação HTTP: → Parse JSON → Content: body('HTTP') → Schema: gere automaticamente clicando em "Generate from sample" e colando uma resposta real da API
Parse JSON é obrigatório: A ação HTTP retorna o corpo como texto. O Parse JSON transforma em objeto navegável — sem ele, você não consegue referenciar campos individuais da resposta como tokens dinâmicos.
Mapear para o Dataverse
Após o Parse JSON, os campos da resposta ficam disponíveis como tokens:
→ Patch Cases ou Update row com os valores mapeados
Tratar erros de API
Configure run after na ação seguinte ao HTTP: ✓ has failed ✓ has timed out
Dentro do branch de erro: - Verifique o status code: outputs('HTTP')['statusCode'] - 401 → token expirado → renovar e tentar novamente - 404 → registro não encontrado → criar novo - 429 → rate limit → Delay 60s + retry - 5xx → erro do servidor → notificar administrador
Pablo Maruk
Analista Funcional de Dynamics · 16 anos de TI · EUA & Europa