Consulta de Power BI: publique la solicitud de API para autenticarse y luego realice llamadas de API

Un usuario Pregunto ✅

ranjithkumar

Hola,

Actualmente estoy trabajando en el informe de UiPath. UiPath proporciona la API para recuperar datos. Implica 2 pasos,

1. Autenticación, utilizando el token de actualización y la identificación del cliente.

2. Llamada a la API para obtener datos utilizando el token del paso 1.

Mi consulta de la siguiente manera pero no funciona

let
    token_url = "https://account.uipath.com/oauth/token",    
    api_base_url = "https://platform.uipath.com/AGC/AGC/odata/OrganizationUnits",
    

   body="grant_type=refresh_token&client_id=8DEv1AMNXxxxxxxxxx&refresh_token=BIrTRLxxxxxxxxxx",
   Source  = Json.Document(Web.Contents(token_url,
   [ 
     Headers = [#"Content-Type"="application/json", #"X-UIPATH-TenantName"="AGC"],
     Content=Text.ToBinary(body)
   ]
   )
   ),
    token = Source[access_token],

    data= Json.Document(Web.Contents(api_base_url, [Headers=[#"Authorization"="Bearer "&token, #"Content-Type"="application/json", #"X-UIPATH-TenantName"="AGC"]]))
in
    data

¿Hay algún problema con la consulta anterior?

UiPath proporciona documentación sobre cómo obtener datos usando API https://docs.uipath.com/orchestrator/reference/consuming-cloud-api

Cualquier solución o sugerencia será de gran ayuda.

Gracias,

Ranjith

ranjithkumar

En respuesta a Greg_Deckler

Gracias Greg …

Justo ahora lo hago funcionar.

La consulta trabajada de la siguiente manera

let
    token_url = "https://account.uipath.com/oauth/token",    
    api_base_url = "https://platform.uipath.com/AGC/AGC/odata/OrganizationUnits",
    

   body="grant_type=refresh_token&client_id=8DEv1AMNXczW3yxxxxxxxxx&refresh_token=BIrTRL7Sqc73ul6M5pEW_xxxxxxxxxxxxxx",
   Source  = Json.Document(Web.Contents(token_url,
   [ 
     Headers = [#"Content-Type"="application/x-www-form-urlencoded", #"X-UIPATH-TenantName"="AGC"],
     Content=Text.ToBinary(body)
   ]
   )
   ),
    token = Source[access_token],

    data= Json.Document(Web.Contents(api_base_url, [Headers=[#"Authorization"="Bearer "&token, #"Content-Type"="application/json", #"X-UIPATH-TenantName"="AGC"]]))
in
    data

Y también configuré Credenciales en ‘Anónimo’ y Privacidad en ‘Público’. Funciona😊

Greg_Deckler

Defina «no funciona»

ranjithkumar

En respuesta a Greg_Deckler

Gracias Greg …

Justo ahora lo hago funcionar.

La consulta trabajada de la siguiente manera

let
    token_url = "https://account.uipath.com/oauth/token",    
    api_base_url = "https://platform.uipath.com/AGC/AGC/odata/OrganizationUnits",
    

   body="grant_type=refresh_token&client_id=8DEv1AMNXczW3yxxxxxxxxx&refresh_token=BIrTRL7Sqc73ul6M5pEW_xxxxxxxxxxxxxx",
   Source  = Json.Document(Web.Contents(token_url,
   [ 
     Headers = [#"Content-Type"="application/x-www-form-urlencoded", #"X-UIPATH-TenantName"="AGC"],
     Content=Text.ToBinary(body)
   ]
   )
   ),
    token = Source[access_token],

    data= Json.Document(Web.Contents(api_base_url, [Headers=[#"Authorization"="Bearer "&token, #"Content-Type"="application/json", #"X-UIPATH-TenantName"="AGC"]]))
in
    data

Y también configuré Credenciales en ‘Anónimo’ y Privacidad en ‘Público’. Funciona😊

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *