50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
#!/usr/bin/env python
|
|
# coding: utf-8
|
|
|
|
# ## Notebook - API_refresh_PBI_dataset
|
|
#
|
|
# New notebook
|
|
|
|
# In[2]:
|
|
|
|
|
|
pip install adal
|
|
|
|
|
|
# In[3]:
|
|
|
|
|
|
import adal
|
|
import requests
|
|
|
|
|
|
# Credenciais que serão utilizadas na atualização do dataset que esta no power BI
|
|
client_id = "e30706c6-bee0-4a2a-a208-420587d04d1c"
|
|
username = "nicolas.evilasio@grupoginseng.com.br"
|
|
password = "Ginseng@"
|
|
|
|
workspace_id = '8834c28f-adc5-424b-a337-3ee2ecec60c3'
|
|
dataset_id = '64e76869-2d76-4919-b471-815f7d8db031'
|
|
|
|
# Credencias de acesso do lado da microsoft
|
|
authority_url = 'https://login.windows.net/common'
|
|
resource_url = 'https://analysis.windows.net/powerbi/api'
|
|
url = r'https://api.powerbi.com/v1.0/myorg/groups/' + workspace_id + '/datasets/' + dataset_id + '/refreshes?$top=1'
|
|
|
|
# Context client, token e access_token para acessarmos o power bi da cyrela
|
|
context = adal.AuthenticationContext(authority=authority_url, validate_authority=True, api_version=None)
|
|
token = context.acquire_token_with_username_password(resource=resource_url, client_id=client_id, username=username, password=password)
|
|
access_token = token.get('accessToken')
|
|
print(access_token)
|
|
# Requisição
|
|
header = {'Authorization': f'Bearer {access_token}'}
|
|
r = requests.post(url=url, headers=header)
|
|
|
|
# Verificando o status da requisição
|
|
if r.status_code == 202:
|
|
print("Atualização iniciada com sucesso!")
|
|
else:
|
|
print(f"Erro ao iniciar a atualização: {r.status_code}")
|
|
print(f"Detalhes do erro: {r.text}") # Imprime os detalhes do erro retornado pela API
|
|
|