Call generic API request with URL parameters
Calls a generic Power BI API endpoint with URL parameters (e.g. filters). Supply the endpoint path and parameters in the Url parameter.
SELECT *
FROM generic_request
WITH (Url='/groups?$filter=contains(name,''MyWorkspace'') or name eq ''My Blue Workspace''',
Filter='$.value[*]')
/*
EXPLANATION:
- This configuration calls Power BI REST API "Get Groups" endpoint and gets the Workspaces back.
- This is achieved by "/groups" value in the "Url" parameter.
- Workspaces are filtered on the Power BI REST API side by using the "$filter" URL parameter.
- Only those Workspaces are returned that:
> contain a string value "MyWorkspace" or
> if the Workspace name is "My Blue Workspace" (each single quote is escaped with two single quotes).
- The SQL query parameter "Filter" uses JsonPath "$.value[*]".
- This gets JSON objects from "value" array and transforms them into SQL rows.
MORE INFORMATION:
- About "Get Groups" REST API endpoint:
https://learn.microsoft.com/en-us/rest/api/power-bi/groups/get-groups
- About JsonPath used in "Filter" parameter:
https://zappysys.com/blog/jsonpath-examples-expression-cheetsheet
*/