pyFabricOps na prática: Automatizando Microsoft Fabric e Power BI com Python e REST APIs
Em julho de 2025 eu criei o projeto pyFabricOps que é uma biblioteca Python disponível no Pypi com o objetivo de ler, criar, modificar, automatizar artefatos do Microsoft Fabric e Power BI utilizando as REST APIs oficiais.
O objetivo inicial era criar uma biblioteca capaz de rodar fora do Microsoft Fabric, ou seja, em scripts locais e em pipelines do Azure DevOps ou GitHub para esteiras de CI/CD assim como em orquestradores de Data Engineering.
Contudo muitos seguidores me pediram para que fosse possível rodar a biblioteca nos notebooks do Microsoft Fabric.
Pois bem, a partir da versão 0.3.10 eu tenho alegria de anunciar que a biblioteca pyFabricOps pode rodar nos notebooks do Microsoft Fabric! 🚀
A seguir vou exemplificar a dar os primeiros passos com a biblioteca em dois ambientes distintos:
1 – Fora do Microsoft Fabric, ou seja, scripts locais (.py) como jupyter notebooks (.ipynb);
2 – Notebooks Fabric, utilizando environment customizado.
Executando fora do Microsoft Fabric
Setup
Como o pacote está disponível no pypi é muito fácil instalar a biblioteca.
Na máquina local (com Python instalado) rode no terminal:
pip install -U pyfabricopsAgora a biblioteca está disponível para importação em seus scripts.
Crie um arquivo chamado test.ipynb e na primeira célula do notebook execute.
import pyfabricops as pfpf é apenas um alias que escolhi pois não há nenhum alias que conheço que o utiliza. Além disso me relembra Pezzott Fabric! 🤣
Logging
Eu criei um logging personalizado ao qual o usuário pode invocar ou não, definir para que seja somente no terminal ou loggando em diretório. Fica a gosto do freguês qual o nível e a aparência do logging. Podemos falar especificamente dele em outro post. Para não iniciar sem log nenhum, você pode usar a minha preferência.
pf.setup_logging(level='info', format_style='standard')Você pode conferir todas as opções do logging na documentação oficial aqui.
Autenticação
oauth (Interativo)
Desta forma o usuário executa os scripts e a biblioteca solicita o login via browser de forma interativa. A própria biblioteca gerencia a validade dos tokens e renova quando necessário.
Esta é uma maneira bastante eficaz e rápida principalmente quando não se tem acesso ao Service Principal. Contudo esta maneira não atende scripts de automação pois não será possível abrir a tela e não haverá um usuário para autenticar interativamente.
Configure a autenticação interativa com:
pf.set_auth_provider('oauth')env (Service Principal)
Esta é a maneira ideal para automação pois roda em background com escopos definidos gerenciados no Microsoft Entra ID.
Assista aqui como criar um Service Principal para utilização com a biblioteca.
Basta você configurar as credenciais seja nas bibliotecas de variáveis de ambiente do Windows, seja GitHub Secrets, Azure DevOps secrets ou até mesmo em um arquivo .env na raiz do seu repositório local.
A seguir veja um exemplo de arquivo .env:
FAB_CLIENT_ID=00000000-1234-5678-9012-999999999999
FAB_CLIENT_SECRET=avh~arhvparhr-054qvm.avap
FAB_TENANT_ID=99999999-1234-5678-9012-000000000000Primeiros comandos
Agora vamos executar um comando simples. Por exemplo listar todos os workspaces.
Atente-se ao método de autenticação que está executando, pois neste exemplo, se rodar o comando usando a autenticação interativa irá coletar os workspaces que aquele usuário tem acesso. Já se executar pelo Service Principal irá obter os workspaces que o service principal tem acesso.
pf.list_workspaces()Resultado

Caso queira retornar em formato json basta passar o parâmetro df=False
pf.list_workspaces(df=False) 
Além disso você pode apenas passar o mouse sobre cada função que você poderá conferir os argumentos, retorno e exemplos nas docstrings.

Executando no Microsoft Fabric
Setup
Há duas formas de instalar a biblioteca no Microsoft Fabric. A primeira é temporária, ou seja, apenas durante a sessão ativa. Exige a reinstalação a cada início da sessão. Este tipo serve apenas para algo pontual, alguma manipulação esporádica, um teste apenas.
Crie um notebook qualquer e rode o comando abaixo para instalar nesta sessão ativa
%pip install -qq -U pyfabricopsA segunda forma é a mais indicada. No workspace crie um environment.
Adicione a biblioteca usando a interface e depois salve e publique.
Este processo de publicação pode levar até em torno de 15 minutos.
Feito isto basta adicionar o environment aos notebooks do workspace, garantindo desta forma a execução do notebook de forma autônoma eliminando a instalação a cada sessão.

Agora no notebook você pode importar a biblioteca e efetuar o setup do logging.
import pyfabricops as pf
pf.setup_logging(level='info', format_style='standard')Autenticação
fabric
Este o mais novo método de autenticação da biblioteca. Com esta opção o usuário autenticado pode executar REST APIs utilizando o token do próprio usuário autenticado através da biblioteca Notebookutils.
pf.set_auth_provider('fabric')env
Também no Microsoft Fabric está suportado o Service Principal. Contudo recomenda-se fortemente utilizar o Azure Key Vault para gerenciar as credenciais.
Veja neste vídeo como configurar o Azure Key Vault para armazenar as credencias e gerenciar o acesso dos usuários ao Service Principal de maneira ultra segura.
No notebook utilize o snippet abaixo para autenticar utilizando o service principal obtido pelo Azure Key Vault.
import os
from notebookutils import credentials
KEY_VAULT = "https://your_key_vault_name.vault.azure.net/"
os.environ["FAB_CLIENT_ID"] =credentials.getSecret(KEY_VAULT, "YOUR-FAB-CLIENT-ID")
os.environ["FAB_CLIENT_SECRET"]=credentials.getSecret(KEY_VAULT, "YOUR-FAB-CLIENT-SECRET")
os.environ["FAB_TENANT_ID"]=credentials.getSecret(KEY_VAULT, "YOUR-FAB-TENANT-ID")
pf.set_auth_provider('env')Primeiros comandos
Vamos repetir os comandos executados mais acima obtendo os workspaces.
pf.list_workspaces()Resultado

pf.list_workspaces(df=False)
Conclusão
A partir de agora você pode incluir as mais de 350 funções disponíveis para manipular os artefatos do Microsoft Fabric e Power BI de dentro do próprio Microsoft Fabric ou fora com opções de autenticação diversificada para cada cenário.
Vai economizar tempo rodando processos automatizados que vão além da interface gráfica permitindo configurações específicas além de promover a gestão e produtividade dos workflows.
Irá automatizar pipelines de CI/CD com scripts personalizados capazes de subir arquiteturas inteiras até realizar deploys entre os estágios do ciclo de desenvolvimento com performance e escalabilidade.
Documentação oficial: aqui
Projeto no GitHub: aqui
Vídeo demo: aqui
[…] Confira neste artigo como instalar: pyFabricOps na prática: Automatizando Microsoft Fabric e Power BI com Python e REST APIs – Alison… […]