Forum Discussion
API: syntax error on access token
Hi, I'm using the following code to connect to Harvest API and use a smart pagination system, but a syntax error "token identified expected" appears marking the access token section (from "Headers"). Could you please let me know what's wrong?
let
iterations = 10,
url =
"https://api.harvestapp.com/v2/time_entries?from=" & "2021-01-01&to=2021-07-31",[Headers=[#"Harvest-Account-Id"="1051XXX", Authorization="Bearer 1846XXX.pt.-4C7p34XXXXXXXXX1dCRiBEgrmR8NOJ3SPgBBSwuwXZzp6dJ2jwi-gfg"]])),
FnGetOnePage =
(url) as record =>
let
Source = Json.Document(Web.Contents(url)),
data = try Source[data] otherwise null,
next = try Source[links][next] otherwise null,
res = [Data=data, Next=next]
in
res,
GeneratedList =
List.Generate(
()=>[i=0, res = FnGetOnePage(url)],
each [i]<iterations and [res][Data]<>null,
each [i=[i]+1, res = FnGetOnePage([res][Next])],
each [res][Data])
in
GeneratedList
Thanks,
Salvador
Hi sbenzaquen ,
"url =
"https://api.harvestapp.com/v2/time_entries?from=" & "2021-01-01&to=2021-07-31",[Headers=[#"Harvest-Account-Id"="1051XXX", Authorization="Bearer 1846XXX.pt.-4C7p34XXXXXXXXX1dCRiBEgrmR8NOJ3SPgBBSwuwXZzp6dJ2jwi-gfg"]]))"This syntax is not correct in power query, ',' means the ending of a query statement, contents after ',' would be a new query statement, '))' are not be used in the statement.
Try to modify the query like this:
let iterations = 10, url ="https://api.harvestapp.com/v2/time_entries?from=" & "2021-01-01&to=2021-07-31", header = [Headers = [#"Harvest-Account-Id"="1051XXX", Authorization="Bearer 1846XXX.pt.-4C7p34XXXXXXXXX1dCRiBEgrmR8NOJ3SPgBBSwuwXZzp6dJ2jwi-gfg" ] ], FnGetOnePage = (url,header) => let Source = Json.Document(Web.Contents(url,header)), data = try Source[data] otherwise null, next = try Source[links][next] otherwise null, res = [Data=data, Next=next] in res, GeneratedList = List.Generate( ()=>[i=0, res = FnGetOnePage(url,header)], each [i]<iterations and [res][Data]<>null, each [i=[i]+1, res = FnGetOnePage([res][Next])], each [res][Data]) in GeneratedListHere is an example syntax of using parameter in power query based on Web.Contents():
let url = "https://api.powerbi.com/v1.0/myorg/datasets/" & "xxx", header = [ Headers = [#"Authorization" = "Bearer xxx"] ], Source = Json.Document(Web.Contents(url,header)) in SourceRefer: THE HIDDEN GEMS OF THE FUNCTION WEB.CONTENTS()
Best Regards,
Community Support Team _ Yingjie Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
1 Reply
- v-yingjl
Community Support
Hi sbenzaquen ,
"url =
"https://api.harvestapp.com/v2/time_entries?from=" & "2021-01-01&to=2021-07-31",[Headers=[#"Harvest-Account-Id"="1051XXX", Authorization="Bearer 1846XXX.pt.-4C7p34XXXXXXXXX1dCRiBEgrmR8NOJ3SPgBBSwuwXZzp6dJ2jwi-gfg"]]))"This syntax is not correct in power query, ',' means the ending of a query statement, contents after ',' would be a new query statement, '))' are not be used in the statement.
Try to modify the query like this:
let iterations = 10, url ="https://api.harvestapp.com/v2/time_entries?from=" & "2021-01-01&to=2021-07-31", header = [Headers = [#"Harvest-Account-Id"="1051XXX", Authorization="Bearer 1846XXX.pt.-4C7p34XXXXXXXXX1dCRiBEgrmR8NOJ3SPgBBSwuwXZzp6dJ2jwi-gfg" ] ], FnGetOnePage = (url,header) => let Source = Json.Document(Web.Contents(url,header)), data = try Source[data] otherwise null, next = try Source[links][next] otherwise null, res = [Data=data, Next=next] in res, GeneratedList = List.Generate( ()=>[i=0, res = FnGetOnePage(url,header)], each [i]<iterations and [res][Data]<>null, each [i=[i]+1, res = FnGetOnePage([res][Next])], each [res][Data]) in GeneratedListHere is an example syntax of using parameter in power query based on Web.Contents():
let url = "https://api.powerbi.com/v1.0/myorg/datasets/" & "xxx", header = [ Headers = [#"Authorization" = "Bearer xxx"] ], Source = Json.Document(Web.Contents(url,header)) in SourceRefer: THE HIDDEN GEMS OF THE FUNCTION WEB.CONTENTS()
Best Regards,
Community Support Team _ Yingjie Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.