Forum Discussion
REST API CALL in function wont work due to invalid input
My function looks like the following.
= (playerId as text) as table=>
let
Source = Json.Document(
Web.Contents(
"https://api.greatAPI.io/v1/",
[
RelativePath ="players/" & (playerId)
],
[
Headers=
[
Accept="application/json", Authorization="Bearer XXXXXXXXXXXXXXX"
]
]))
in
#"Source"
Error Message:
Error in query ''. Expression.Error: 3 arguments were passed to a function that expects between 1 and 2 arguments.
Details:
pattern=
arguments=[list]
The input playerId:
xd7u2cf3-5412f6-4b0d-r300-a8bss41c7cda
I tried various header syntax but nothing seems to work.
As the error says 3 argmuments where passed is wrong because just one argument is passed, I assumend that somehow the "-" make a problem.
Tried also to but the playerId into "" or ''.
Nothing worked so far.
Hi LeonardSchwenk ,
the Web.Contents function only accepts 2 parameters. So you have to nest the records into one like so:(playerId as text) as table=> let Source = Json.Document( Web.Contents( "https://api.greatAPI.io/v1/", [ RelativePath ="players/" & (playerId) , Headers= [ Accept="application/json", Authorization="Bearer XXXXXXXXXXXXXXX" ] ])) in #"Source"Hi LeonardSchwenk ,
no, it's not.
There is no opening square bracket before "Headers" for example.
I'd recommend to try it out.
3 Replies
- ImkeFCommunity Champion
Hi LeonardSchwenk ,
the Web.Contents function only accepts 2 parameters. So you have to nest the records into one like so:(playerId as text) as table=> let Source = Json.Document( Web.Contents( "https://api.greatAPI.io/v1/", [ RelativePath ="players/" & (playerId) , Headers= [ Accept="application/json", Authorization="Bearer XXXXXXXXXXXXXXX" ] ])) in #"Source"- LeonardSchwenkFrequent Visitor
ImkeF Maybe im missing something but thats the query I posted. How do I nest the parameters then ?
Thanks
- ImkeFCommunity Champion
Hi LeonardSchwenk ,
no, it's not.
There is no opening square bracket before "Headers" for example.
I'd recommend to try it out.