Power BI
Export Power BI user data
/a/PowerBI_getUserData
Export selected profile, device, cost, location, and work fields for active tenant users.
When to use this endpoint
Use PowerBI_getUserData for the Users table in the legacy connector.
Authentication and permissions
The request must authenticate with signed API-key fields or a logged-in CRM session so that the tenant database and user context are available. The handler performs no page or role-permission check.
This direct dataset route does not consume the unsigned api_id/api_key pair used by the Power BI connector. Use PowerBI_getData for the self-authenticating connector feed.
Parameters
This endpoint has no operation-specific parameters.
Example request
FM_api('PowerBI_getUserData');
Example response
[
{"user_id":"18","user_name":"Alex","active":"1","app_make":"Google","app_model":"Pixel","app_platform":"Android","app_repo":"main","cost_per_hour":"25.00","date_created":"2026-01-02","date_last_edited":"1727441000","departments":"[3]","edited_uuid":"...","email":"alex@example.test","hours_per_week":"40","language":"en","last_latitude":"54.60","last_longitude":"-5.93","last_latlon_time":"1788422400","last_login":"1788422500","last_login_app_ver":"5.2","price_per_hour":"50.00","server":"","uuid":"...","vehicle_id":"...","work_location_id":"8"}
]
Errors and unusual responses
| Response | Condition |
|---|---|
{"error":"not logged in"} | No authenticated tenant context is available. Invalid signed credentials can be rejected by the dispatcher before the handler runs. |
Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.
Behaviour and edge cases
- Only rows with
active=1are returned. There is no role/department scope, explicit ordering, date filter, or pagination. - The exact selected keys are those shown in the example: IDs/names, active/device/app fields, rates and hours, creation/edit fields, departments, email/language, last location/login data, server/UUID, vehicle, and work-area ID.
- Structured fields such as departments remain in their stored representation.
- The aggregate feed exposes the array as
user_dataformodule=all-usersand includes it inmodule=all.
See it in Fieldmotion
CRM1
The legacy connector uses this result as its Users table.
CRM2
CRM2 does not call this reporting route for user administration.
Related endpoints
PowerBI_getUserSkillsDatasupplies skill assignments.PowerBI_getUserClockinsDatasupplies clock-in rows.PowerBI_getDatais the supported aggregate connector feed and supplies tenant settings to this helper.PowerBI_authenticateestablishes the unsigned connector session used by the aggregate feed.