cancel
Showing results for 
Search instead for 
Did you mean: 

Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.

Reply
NuriaZ
New Member

Creating multiple queries from a list of values

I hope that someone can help me.
I have an Excel sheet with a list of names golf players and their license numbers.
There's a website where I can get their game data but I have to search by license number and by game, I cannot do a query that gives me all the players data and all the games in just one go.

So. basically, I would have to create a query for each player and for each game to be able to show their results in a table.
Is there anyway that I can automate this in Power Query?

As an example

 

I have a list like this

NameLicencse
AlbertXS0001
MaryXH0035
James

XJ9882

And then, I have an url that goes like this

https://www.golfpage.com/search/license=XS001&game=23453

 

This webpage will provide the data for that particular game (game id 23453) in JSON format.

The result would be somethin like

{"code":0,"data":{"docs":[{"clubCode":"X","federatedCode":"123333","license":"XS0001","firstName":"ALBERT","surname":"SMTIH","fullName":"ALBERT SMITH","gender":"M","hcpExact":17.2,"private":{},"extra":{"photo":null,"email":"a*******@*****.com"},"__licenseInUse":false,"__isFederatedActive":true,"__isValidForActionPlay":true,"_id":"4hf3457e7433a4"}],"totalDocs":1,"offset":0,"limit":50,"totalPages":1,"page":1,"pagingCounter":1,"hasPrevPage":false,"hasNextPage":false,"prevPage":null,"nextPage":null}}

I do have to transform the data to get to the value I want and crear a table like this

NameLicencseHPC
AlbertXS000117,2
MaryXH003522,6
James

XJ9882

15,9

Is there anyway that I can do what I want

1 ACCEPTED SOLUTION
AlexisOlson
Super User
Super User

@parry2k has a good answer related to this: Calling multiple APIs based on a column

 

Here's a simplified example I've created using a dummy API service:

let
  Source = #table({"ID"}, {{1}, {3}, {6}}), 
  BaseURL = "https://jsonplaceholder.typicode.com/comments?postId=", 
  ID_Result = Table.AddColumn(
    Source, 
    "API_Result", 
    each Json.Document(Web.Contents(BaseURL & Number.ToText([ID]))), 
    type list
  ), 
  Extract_Field = Table.AddColumn(
    ID_Result, 
    "FirstEmail", 
    each List.First([API_Result])[email], 
    type text
  )
in
  Extract_Field

 

AlexisOlson_0-1695397398911.png

View solution in original post

3 REPLIES 3
AlexisOlson
Super User
Super User

@parry2k has a good answer related to this: Calling multiple APIs based on a column

 

Here's a simplified example I've created using a dummy API service:

let
  Source = #table({"ID"}, {{1}, {3}, {6}}), 
  BaseURL = "https://jsonplaceholder.typicode.com/comments?postId=", 
  ID_Result = Table.AddColumn(
    Source, 
    "API_Result", 
    each Json.Document(Web.Contents(BaseURL & Number.ToText([ID]))), 
    type list
  ), 
  Extract_Field = Table.AddColumn(
    ID_Result, 
    "FirstEmail", 
    each List.First([API_Result])[email], 
    type text
  )
in
  Extract_Field

 

AlexisOlson_0-1695397398911.png

I have to say that it has been a bit challenging because, unlike your example, my JSON was a bit more complicated than your example, and it had to be expanded three times.
I finally got it to work (with the help of the Power Query interface in the end) and your code was a great guideline to achieve what I needed. 
Thank you

I will try to adapt your code to what I need. It looks like it is what I'm asking for. 
I'll see if I can make it work because I'm quite new at this. 
Thank you.

Helpful resources

Announcements
PBI November 2023 Update Carousel

Power BI Monthly Update - November 2023

Check out the November 2023 Power BI update to learn about new features.

Community News

Fabric Community News unified experience

Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.

Dashboard in a day with date

Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

Power BI Fabric Summit Carousel

The largest Power BI and Fabric virtual conference

130+ sessions, 130+ speakers, Product managers, MVPs, and experts. All about Power BI and Fabric. Attend online or watch the recordings.

Top Solution Authors