Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
1 year ago

API REST como fuente de datos: caso de uso

Hola expertos,

¿Alguien podría guiarme sobre cómo extraer los datos de la API REST?

Tengo una lista de API, que se conectarán a través de un token de inicio de sesión (token de portador) y quiero extraer los datos a Power BI Desktop para compilar

Gracias

Santhosh

4 Replies

  • @sthatoju

    Puede conectarse mediante Power Query, el formato general será:

    let
        BearerToken = "YOUR_BEARER_TOKEN",
        ApiUrl = "https://api.example.com/data",
        Source = Web.Contents(ApiUrl,
            [
                Headers = [Authorization = "Bearer " & BearerToken]
            ]
        ),
        JsonResponse = Json.Document(Source)
    in
        JsonResponse
    

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      Gracias @Fowmy por su respuesta.

      Lo probaré. Sin embargo, ¿podría confirmarme que esta configuración de Power Query funcionará para los usuarios finales (consumidores), que ejecutarán el informe?

      Quiero crear un informe y entregarlo a los usuarios finales.

      Gracias

      Santhosh

  • Hola @sthatoju , hola Fowmy, ¡gracias por su pronta respuesta!

    Estoy de acuerdo con Fowmy, y como complemento, veamos cómo podemos aprovechar la API en Power Query a través de web.contents:

    Web.Contents es una potente función de Power Query que permite recuperar contenido web directamente, sin necesidad de un explorador.

    Esta función es especialmente beneficiosa para acceder a las API que devuelven datos en formatos como JSON o CSV.

    Al utilizar el encabezado Authorization junto con su token de portador, puede acceder de forma segura a los recursos protegidos, lo que garantiza que la recuperación de sus datos sea eficiente y segura.

    Espero que el siguiente artículo sea útil:
    Web.Contents y APIs en Power BI

    Saludos

    Joyce

    Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.