Forum Discussion
geekyPanda
3 years agoFrequent Visitor
Issue with extracting data for multiple api calls in custom data connector
I'm trying to extand data using a custom data connector, but I got an error that type Record can't be convert into type Table. Can anybody give me some advice what I did wrong. Here is my code.
getMydata.getMyData = (apiKey as text, symbols as text, startYear as text, endYear as text) =>
let
symbolList = Text.Split(symbols, ","),
initialPosition = 0,
getJson = (position) =>
let
source = Json.Document(
Web.Contents(
"https://myDataAPI.com/getData.json?apikey="
& apiKey
& "&symbol="
& symbolList{position}
& "&startYear="
& startYear
& "&endYear="
& endYear
)
),
apiData = try source[results] otherwise null,
data = if apiData <> null then apiData[data] else null, // extract "data"
toTable = if data <> null then Table.FromRecords(data) else null
in
toTable,
AllJson = List.Generate(
// initial
() => [i = 1, data = getJson(initialPosition)],
// condition
each [i] <= List.Count(symbolList),
// next
each [i = [i] + 1, data = getJson([i])]
)
,
toTable = Table.Combine(AllJson) // combine all tables into one
in
toTable,
1 Reply
- ppm1Solution Sage
I think the only function needing a table input is Table.Combine so I would look there. Return just the AllJson step to confirm it is a list of only tables.
Pat