Forum Discussion
Get more data with API with more ID client
Hello,
I have this code, but I wanna get all date of my students,at once. With this code below I get one-per-one
let
url = "http://webservices.sponteweb.com.br/WSApiSponteRest/api/students",
Body = "{""student_id"": ""61""}",
source = Json.Document(Web.Contents(url, [Headers = [#"Content-Type"="application/json", #"Accept"="application/json", #"api_key"="XXXXX"], Content = Text.ToBinary(Body)]))
in
source
Hi ViniDreamit
You can call the API repeatedly using List.Transform as is shown in this similar question
Solved: Re: DATA for multiple years - Microsoft Power BI Community
For you, you could use code liek this heer the Student ID's are specified in a list - this example just gets ID's 1 to 5. Change this accordingly.
let url = "http://webservices.sponteweb.com.br/WSApiSponteRest/api/students", StudentIDs = {1 .. 5}, GetWebPage = (StudentID) => let Body = "{""student_id"": """ & StudentID & """}", Source = Json.Document(Web.Contents(url, [Headers = [#"Content-Type"="application/json", #"Accept"="application/json", #"api_key"="XXXXX"], Content = Text.ToBinary(Body)])) in Source, WebPages = List.Transform(StudentIDs, each GetWebPage(Text.From(_))), #"Converted to Table" = Table.FromList(WebPages, Splitter.SplitByNothing(), null, null, ExtraValues.Error) in #"Converted to Table"Or if you have a column with the sudent ID's, that coudl be passed into the function to call the API. If this is the case please provide some sample data and/or an image of your table so I can see how it is structured.
Regards
Phil
3 Replies
- ViniDreamitFrequent Visitor
Thanks a lot Phil!! It's working very well!
- PhilipTreacySuper User
Hi ViniDreamit
You can call the API repeatedly using List.Transform as is shown in this similar question
Solved: Re: DATA for multiple years - Microsoft Power BI Community
For you, you could use code liek this heer the Student ID's are specified in a list - this example just gets ID's 1 to 5. Change this accordingly.
let url = "http://webservices.sponteweb.com.br/WSApiSponteRest/api/students", StudentIDs = {1 .. 5}, GetWebPage = (StudentID) => let Body = "{""student_id"": """ & StudentID & """}", Source = Json.Document(Web.Contents(url, [Headers = [#"Content-Type"="application/json", #"Accept"="application/json", #"api_key"="XXXXX"], Content = Text.ToBinary(Body)])) in Source, WebPages = List.Transform(StudentIDs, each GetWebPage(Text.From(_))), #"Converted to Table" = Table.FromList(WebPages, Splitter.SplitByNothing(), null, null, ExtraValues.Error) in #"Converted to Table"Or if you have a column with the sudent ID's, that coudl be passed into the function to call the API. If this is the case please provide some sample data and/or an image of your table so I can see how it is structured.
Regards
Phil
- ViniDreamitFrequent Visitor
I don't have a list, but it's work perfectly!
Thanks a lotttt