Create a User

Version Requirement:

This functionality is for Dremio v18.0+ Enterprise Edition only.

This API creates a user with a name. Depending on whether the request has a password field or not, the user can be a local (with a password field) or external (without a password field).

Endpoint Syntax

POST /api/v3/user

Required Privileges

All users executing this Rest API must have the MANAGE GRANTS privilege assigned to receive a response output.

Response Input

{“name”: “username”,
 “firstName”: “dre”, (optional)
 “lastName”: “mio”, (optional)
 “password”: “pwd”, (optional, if it is null, try to create an external user)
 “sendInviteEmail”: boolean (dcs only)
 “roles”: [{"id":  "d4f430eb-af38-4514-8fed-226d1ddbea6a"}]
}

Response Output

This is the standard response output for the API.

{
  "@type": "EnterpriseUser",
  "id": "aaf2dc39-8c95-450b-a542-2e0192ea7150",
  "name": "test_user",
  "firstName": "first",
  "lastName": "first",
  "tag": "UmGtb/FB3LI=",
  "roles": [
    {
      "id": "d4f430eb-af38-4514-8fed-226d1ddbea6a",
      "name": "test_role2",
      "type": "INTERNAL"
    }
  ]
}

Response Codes

  • 200 - Success.
  • 400 - Invalid request or duplicate user name.
  • 403 - The user executing the API request lacks the MANAGE GRANTS permission.

Example

curl -X POST --location "http://automaster.drem.io:9047/api/v3/user" \
    -H "Authorization: _dremiopu2916f7aph06aahv4ksu4life" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d "{\"name\":  \"test_user\", \"firstName\": \"first\", \"password\": \"testpassword123\",\"roles\":  [{\"id\":  \"d4f430eb-af38-4514-8fed-226d1ddbea6a\"}]}"