Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Valor dinámico en la dirección URL de la API de origen web basado en el valor de la tabla

Hola

Estoy usando una API para obtener datos de reserva de Bookeo.com. Bookeo limita las consultas a un máximo de 100 registros por página de resultados (ver más aquí: https://www.bookeo.com/api/protocol/). La mayoría de los meses recibimos más que esto, así que creo una nueva consulta para cada página de resultados, usando su protocal: "Para navegar a otra página, una aplicación puede simplemente invocar el mismo punto final de API nuevamente, pasando solo dos parámetros, pageNavigationToken y pageNumber".

Por ejemplo, https://api.bookeo.com/v2/...? pageNavigationToken=xDgBr3m8qxLWtkSA&pageNumber=5

El problema es que, cada vez que actualizo la consulta original, pageNavigationToken cambia, lo que hace que la consulta que recupera la 2ª página de resultados falle (porque todavía está usando el anterior pageNavigationToken)

Lo que quiero es que pageNavigationToken en la dirección URL de origen web de la 2ª página haga referencia al valor de la primera tabla de resultados. Esto significa que cuando el valor cambia, la conexión URL para la 2ª página de resultados se actualiza automáticamente con el pageNavigationToken más reciente.

¿Hay alguna manera de hacer referencia a un valor de una tabla en una URL de origen web?

Por ejemplo, https://api.bookeo.com/v2/...? pageNavigationToken= ( fórmula para recuperar el último valor superior de (Table[pageNavigationToken])&pageNumber=5

¡Gracias!

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola a todos los que estén interesados. Yo mismo resuelvo el problema:

1. Creé una consulta que solo devuelve pageNavigationToken como valor. Esto cambia en cada actualización.

2. Creé consultas que hacen referencia a esta páginaNavigationToken en su URL de conexión:


https://api.bookeo.com/v2/bookings?secretKey=*****&apiKey=*****&pageNavigationToken="&#"pageNavigationToken" &"&pageNumber=1

Anteriormente, esto devolvería el error Formula.Firewall. La forma en que evité esto fue ir a: Archivo -> Opciones y configuración -> Opciones -> Privacidad, luego seleccione "Ignorar siempre la configuración del nivel de privacidad". Esto viene con una advertencia sobre la exposición de datos a personas no autorizadas. Sin embargo, me permite conectarme a la fuente externa al mismo tiempo que hago referencia a una consulta diferente.

Ahora, cuando pageNavigationToken cambia con cada actualización, también lo hacen las direcciones URL de conexión de las consultas dependientes.

Gracias por escuchar 🙂

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hola a todos los que estén interesados. Yo mismo resuelvo el problema:

1. Creé una consulta que solo devuelve pageNavigationToken como valor. Esto cambia en cada actualización.

2. Creé consultas que hacen referencia a esta páginaNavigationToken en su URL de conexión:


https://api.bookeo.com/v2/bookings?secretKey=*****&apiKey=*****&pageNavigationToken="&#"pageNavigationToken" &"&pageNumber=1

Anteriormente, esto devolvería el error Formula.Firewall. La forma en que evité esto fue ir a: Archivo -> Opciones y configuración -> Opciones -> Privacidad, luego seleccione "Ignorar siempre la configuración del nivel de privacidad". Esto viene con una advertencia sobre la exposición de datos a personas no autorizadas. Sin embargo, me permite conectarme a la fuente externa al mismo tiempo que hago referencia a una consulta diferente.

Ahora, cuando pageNavigationToken cambia con cada actualización, también lo hacen las direcciones URL de conexión de las consultas dependientes.

Gracias por escuchar 🙂

Syndicate_Admin
Administrator
Administrator

Como prueba, ingresé esto:

= Json.Document(Web.Contents("https://api.bookeo.com/v2/bookings?secretKey=*****&apiKey=*****&pageNavigationToken=" & Table.FirstV...(#"Bookings 2022-04 Pg1") & "&pageNumber=2"))

Devolvió el error:

"Formula.Firewall: Query 'Bookings 2022-04 Pg2 (2)' (paso 'Source') hace referencia a otras consultas o pasos, por lo que es posible que no acceda directamente a una fuente de datos. Por favor, reconstruya esta combinación de datos".

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.