/user/createBackendUser
Creates a backend user Note: The API key must be allowed to create backend users. Keys that existed before this permission was added keep it. To allow another key on an On-Prem install, a server administrator runsphp artisan portal:apikey-backend-users <API key or ID> --enable. On SaaS, ask InterWorks to allow the key.
Returns:
array
/user/createFrontendGroup
Creates a Frontend Group. Note: To add members to your Frontend Group, use the addUserToGroup API endpoint. Example Request:POST [your_domain]/api/v1/User/createFrontendGroup?apikey=[your_api_key_here]&name=[group_name_here]
/user/createFrontendUser
Creates a single frontend (i.e. Curator) user. This does not create any platform-specific users, and there is no bulk/CSV equivalent — to create many frontend users at once, script repeated calls to this endpoint or to theusermgmt:frontendusercreate artisan command.
If Curator authenticates against an external identity provider (SAML, OIDC/OAuth, Tableau Server, or Power BI), you
most likely do not need this endpoint at all. Frontend User accounts are created automatically the first time each
user signs in — see Just-in-time (JIT) Provisioning.
Creating users in advance is only necessary when JIT provisioning has been turned off (Settings > Security >
Authentication Settings > Access rules > Disable Just-in-time Provisioning of Curator Users), or when the
authentication type is Curator Users.
An API key cannot create, change, or delete a frontend user whose username belongs to a backend administrator with
Link to frontend user turned on. The
call fails with the error
This username belongs to a linked backend administrator.full_name(string, required) - The full name for the new Curator user.username(string, required) - The username for the new Curator user.email(string, required) - The email address for the new Curator user.password(string, required) - The desired password for the new Curator user.domain(string, optional) - Domain of the user, e.g.domain\usernameorusername@domain. If omitted, Curator derives the domain from the username or email address where possible.send_user_created_curator_email(bool, optional) - Send the Curator signup email to the new user.1= send,0= suppress. Defaults to0.
/user/fetchUser
Returns the currently logged in user’s information. Returns: array/user/getManageablePermissions
Gets a listing of available manageable permissions Returns: array Example Response:/user/addUserToGroup
Adds a user to a group (syncs with Tableau if possible) Returns: array/user/listGroups
Lists groups. Returns: array/user/listUsers
Lists users and the groups they belong to. Parameters:num(integer, optional) - Number of users to return per page. Defaults to50.pg(integer, optional) - Page number. Defaults to1.site(string, optional) - Tableau Site content URL to filter by; only users with a connected Tableau user on that site are returned.
GET [your_domain]/api/v1/User/listUsers?apikey=[your_api_key_here]&num=50&pg=1
Returns:
array
Each user object includes frontend_user_id, name, full_name, email, analytics_id, last_login_at (the time
the user last signed in, or null if they never have), and a groups array.
Example Response:
/user/removeUser
Deletes a Curator frontend user. The user’s group memberships, favorites and preferences are removed with them. Only the Curator user is deleted. The user’s accounts on Tableau, Power BI, ThoughtSpot and other platforms are not changed. Parameters: Provide one of the following. When you provide more than one, Curator uses the first in this order.frontend_user_id(integer) - The ID of the frontend user, as returned bylistUsersor shown on the backend under Settings > Users > Frontend Users.username(string) - The username of the frontend user.email(string) - The email address of the frontend user. If more than one user has this email address, the call returns an error and deletes nothing.
GET [your_domain]/api/v1/User/removeUser?apikey=[your_api_key_here]&username=jane.smith
Returns:
array
Example Response:
result is error and msg names the value that was searched for.
An API key cannot delete a frontend user linked to a backend administrator; see the note under
/user/createFrontendUser.
/user/removeUserFromGroup
Removes a user from a group (syncs with Tableau if possible) Returns: array/User/syncGroup
Kicks off a schedule which synchronizes a single Frontend Group’s membership. Specify the Group’sgroupName OR the
Group’s id (the id is used if both are provided).
Parameters:
groupName(string, optional) - The name of the Frontend Group as shown on the backend under Settings > Users > Frontend Groups.id(integer, optional) - The ID of the Frontend Group. One ofgroupNameoridis required.
GET [your_domain]/api/v1/User/syncGroup?apikey=[your_api_key_here]&groupName=[group_name_here]
Returns:
array
Example Response:
/User/syncGroups
Kicks off a schedule which synchronizes platform group memberships to all configured Frontend Groups. Internally this callsFrontendGroup::syncSchedule to enqueue a sync for every Frontend Group.
Example Request:
GET [your_domain]/api/v1/User/syncGroups?apikey=[your_api_key_here]
Returns:
array
Example Response:
/User/syncGroup and /User/syncGroups enqueue jobs asynchronously - the API call returns as soon as
the sync is queued. The actual membership sync runs through the queued process scheduler (curator:runschedule), so
the work is not complete the moment the response is received.