public class UsersResource extends Object
Modifier and Type | Field and Description |
---|---|
protected ClientConnection |
clientConnection |
protected javax.ws.rs.core.HttpHeaders |
headers |
protected RealmModel |
realm |
protected KeycloakSession |
session |
Constructor and Description |
---|
UsersResource(RealmModel realm,
AdminPermissionEvaluator auth,
AdminEventBuilder adminEvent) |
Modifier and Type | Method and Description |
---|---|
javax.ws.rs.core.Response |
createUser(UserRepresentation rep)
Create a new user
Username must be unique.
|
Stream<UserRepresentation> |
getUsers(String search,
String last,
String first,
String email,
String username,
Boolean emailVerified,
String idpAlias,
String idpUserId,
Integer firstResult,
Integer maxResults,
Boolean enabled,
Boolean briefRepresentation,
Boolean exact)
Get users
Returns a stream of users, filtered according to query parameters
|
Integer |
getUsersCount(String search,
String last,
String first,
String email,
Boolean emailVerified,
String username)
Returns the number of users that match the given criteria.
|
UserResource |
user(String id)
Get representation of the user
|
UserProfileResource |
userProfile()
Get representation of the user
|
protected RealmModel realm
@Context protected ClientConnection clientConnection
@Context protected KeycloakSession session
@Context protected javax.ws.rs.core.HttpHeaders headers
public UsersResource(RealmModel realm, AdminPermissionEvaluator auth, AdminEventBuilder adminEvent)
@POST @Consumes(value="application/json") public javax.ws.rs.core.Response createUser(UserRepresentation rep)
rep
- @Path(value="{id}") public UserResource user(@PathParam(value="id") String id)
id
- User id@GET @Produces(value="application/json") public Stream<UserRepresentation> getUsers(@QueryParam(value="search") String search, @QueryParam(value="lastName") String last, @QueryParam(value="firstName") String first, @QueryParam(value="email") String email, @QueryParam(value="username") String username, @QueryParam(value="emailVerified") Boolean emailVerified, @QueryParam(value="idpAlias") String idpAlias, @QueryParam(value="idpUserId") String idpUserId, @QueryParam(value="first") Integer firstResult, @QueryParam(value="max") Integer maxResults, @QueryParam(value="enabled") Boolean enabled, @QueryParam(value="briefRepresentation") Boolean briefRepresentation, @QueryParam(value="exact") Boolean exact)
search
- A String contained in username, first or last name, or emaillast
- A String contained in lastName, or the complete lastName, if param "exact" is truefirst
- A String contained in firstName, or the complete firstName, if param "exact" is trueemail
- A String contained in email, or the complete email, if param "exact" is trueusername
- A String contained in username, or the complete username, if param "exact" is trueemailVerified
- whether the email has been verifiedidpAlias
- The alias of an Identity Provider linked to the useridpUserId
- The userId at an Identity Provider linked to the userfirstResult
- Pagination offsetmaxResults
- Maximum results size (defaults to 100)enabled
- Boolean representing if user is enabled or notbriefRepresentation
- Boolean which defines whether brief representations are returned (default: false)exact
- Boolean which defines whether the params "last", "first", "email" and "username" must match exactlyStream
of users@Path(value="count") @GET @Produces(value="application/json") public Integer getUsersCount(@QueryParam(value="search") String search, @QueryParam(value="lastName") String last, @QueryParam(value="firstName") String first, @QueryParam(value="email") String email, @QueryParam(value="emailVerified") Boolean emailVerified, @QueryParam(value="username") String username)
null
. The number of all
users within that realm will be returned.
2. If search
is specified other criteria such as last
will
be ignored even though you set them. The search
string will be
matched against the first and last name, the username and the email of a
user.
3. If search
is unspecified but any of last
, first
,
email
or username
those criteria are matched against their
respective fields on a user entity. Combined with a logical and.
search
- arbitrary search string for all the fields belowlast
- last name filterfirst
- first name filteremail
- email filterusername
- username filter@Path(value="profile") public UserProfileResource userProfile()
id
- User idCopyright © 2021 JBoss by Red Hat. All rights reserved.