Get users APIedit

Retrieves information about users in the native realm and built-in users.

Requestedit

GET /_security/user

GET /_security/user/<username>

Prerequisitesedit

  • To use this API, you must have at least the read_security cluster privilege.

Descriptionedit

For more information about the native realm, see Realms and Native user authentication.

Path parametersedit

username
(Optional, string) An identifier for the user. You can specify multiple usernames as a comma-separated list. If you omit this parameter, the API retrieves information about all users.

Query parametersedit

with_profile_uid
(Optional, boolean) Determines whether to retrieve the user profile uid, if exists, for the users. Defaults to false.

Response bodyedit

A successful call returns an array of users with the JSON representation of the users. Note that user passwords are not included.

Response codesedit

If the user is not defined in the native realm, the request 404s.

Examplesedit

To retrieve a native user, submit a GET request to the /_security/user/<username> endpoint:

GET /_security/user/jacknich
{
  "jacknich": {
    "username": "jacknich",
    "roles": [
      "admin", "other_role1"
    ],
    "full_name": "Jack Nicholson",
    "email": "jacknich@example.com",
    "metadata": { "intelligence" : 7 },
    "enabled": true
  }
}

To retrieve the user profile_uid as part of the response:

GET /_security/user/jacknich?with_profile_uid=true
{
  "jacknich": {
    "username": "jacknich",
    "roles": [
      "admin", "other_role1"
    ],
    "full_name": "Jack Nicholson",
    "email": "jacknich@example.com",
    "metadata": { "intelligence" : 7 },
    "enabled": true,
    "profile_uid": "u_79HkWkwmnBH5gqFKwoxggWPjEBOur1zLPXQPEl1VBW0_0"
  }
}

Omit the username to retrieve all users:

GET /_security/user