Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hello,
I want to build a Body of a REST API call using M Query in PowerBI.
I have a list of ID from a list named "UserID" that I want to use it as a variable in the body
Here is my script
body = "{""ids"":" & List.Distinct(UserID) & "}",
When I executed it, it gave me an errors:
Expression.Error: We cannot apply operator & to types Text and List.
Details:
Operator=&
Left={"ids":
Right=[List]
How can I handle this error? what can be a workaround?
Thanks for your help.
Solved! Go to Solution.
@lily99 , you might want to try
body = "{""ids"":[" & Text.Combine(List.Transform(List.Distinct(UserID), each """" & _ & """"),",") & "]}"
| Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
Hello @ImkeF
Thanks for your suggestion, I applied it.
body = "{""ids"":[""" & Text.Combine(List.Distinct(UserID),",") & """]}"
and get the result
{"ids":["User1,User2,User3,User4"]}
However, I want to have the result like this:
{"ids":["User1","User2","User3","User4"]}
so I applied extra "" around the list
= "{""ids"":[" & Text.Combine({"""",List.Distinct(UserID),""""},",") & "]}"
and I got this error:
Expression.Error: We cannot convert a value of type List to type Text.
Details:
Value=[List]
Type=[Type]
How can I make my body return like this?
{"ids":["User1","User2","User3","User4"]}
Thanks alot
@lily99 , you might want to try
body = "{""ids"":[" & Text.Combine(List.Transform(List.Distinct(UserID), each """" & _ & """"),",") & "]}"
| Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
Hi @lily99 ,
if you want to pass a string into the body, you'd have to transform the list into a string as well. Meaning, concatenate the values by comma for example:
body = "{""ids"":" & Text.Combine(List.Distinct(UserID), ",") & "}",
Imke Feldmann (The BIccountant)
If you liked my solution, please give it a thumbs up. And if I did answer your question, please mark this post as a solution. Thanks!
How to integrate M-code into your solution -- How to get your questions answered quickly -- How to provide sample data -- Check out more PBI- learning resources here -- Performance Tipps for M-queries
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 19 | |
| 10 | |
| 9 | |
| 8 | |
| 7 |