Wouter Magre
Wouter Magre

Reputation: 1

Power Query (M) Get info using a function with an API

As a newbe, I have a question about Power Query (M)
I am looking for a way to extract samo info from an API result.
For starters I am doing this:
I have created a query to get the title from a task.

This works fine:

let
    Source = Web.Contents(@fxGetSource() & "/tasks/IEABCDQ7KQPO5DQ4",
    [Headers=[#"Authorization"=@fxGetHeader()]]),
    convertToJson = Json.Document(Source),
    data = convertToJson[data],
    ConvertedToTable = Table.FromList(data, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    ExpandedColumn1 = Table.ExpandRecordColumn(ConvertedToTable, "Column1", {"title"}),
    TheTitle = Table.TransformColumnTypes(ExpandedColumn1,{{"title", type text}})
in
    TheTitle

I would like to have the taskid to sit in a variable, so I created a function:

(aTask as text) as text =>
let
    Source = Web.Contents(@fxGetSource() & "/tasks/" & aTask,
    [Headers=[#"Authorization"=@fxGetHeader()]]),
    convertToJson = Json.Document(Source),
    data = convertToJson[data],
    ConvertedToTable = Table.FromList(data, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    ExpandedColumn1 = Table.ExpandRecordColumn(ConvertedToTable, "Column1", {"title"}),
    TheTitle = Table.TransformColumnTypes(ExpandedColumn1,{{"title", type text}})
in
    TheTitle

When I invoke this function ans use the taskid from above I get:

Expression Error: We cannot convert a value of type Table to type Text.

Upvotes: 0

Views: 119

Answers (1)

horseyride
horseyride

Reputation: 21318

change

(aTask as text) as text =>

to

(aTask as text) as table =>

Upvotes: 0

Related Questions