| GET | /users/find/login-details | Verify a user's login details. |
|---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
@ApiResponse(Description="<p>AuthenticationResponse Values</p>\r\n<table>\r\n<tr><td>Text</td><td>Numerical</td></tr>\r\n<tr><td>An error occurred (-100)</td><td>-100</td></tr>\r\n<tr><td>Account is disabled.</td><td>-11</td></tr>\r\n<tr><td>Account is locked.</td><td>-10</td></tr>\r\n<tr><td>Your password must be of sufficient length and should contain letters, numbers and special characters.</td><td>-3</td></tr>\r\n<tr><td>Invalid confirmation.</td><td>-2</td></tr>\r\n<tr><td>Invalid confirmation.</td><td>-1</td></tr>\r\n<tr><td>An error occurred.</td><td>0</td></tr>\r\n<tr><td>Your password has expired and must be changed.</td><td>1</td></tr>\r\n<tr><td>Your must change your password.</td><td>2</td></tr>\\\r\n<tr><td>Login Successful. Please consider changing your password because it does not meet current complexity requirements</td><td>3</td></tr>\r\n<tr><td>Login successful.</td><td>10</td></tr>\r\n</table>", ResponseType=UserFindByLoginResponse.class, StatusCode=200)
public static class UserFindByLoginRequest extends UserFindByLoginRequestDto implements IRestrictedApiRequest
{
/**
* IP address of the end user
*/
@ApiMember(Description="IP address of the end user", Name="X-Forwarded-For", ParameterType="header")
public String XForwardedFor = null;
/**
* Api Key - grants access to resources
*/
@ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")
public String ApiKey = null;
/**
* ClubReady Club ID (StoreID internally)
*/
@ApiMember(DataType="integer", Description="ClubReady Club ID (StoreID internally)", Name="StoreId", ParameterType="query")
public Integer StoreId = null;
/**
* StoreId OR ChainId is required
*/
@ApiMember(DataType="integer", Description="StoreId OR ChainId is required", Name="ChainId", ParameterType="query")
public Integer ChainId = null;
/**
* ClubReady username
*/
@ApiMember(DataType="string", Description="ClubReady username", IsRequired=true, Name="UserName", ParameterType="query")
public String UserName = null;
/**
* ClubReady password
*/
@ApiMember(DataType="string", Description="ClubReady password", IsRequired=true, Name="Password", ParameterType="query")
public String Password = null;
public Integer RestrictedId = null;
public RestrictedResourceType RestrictedResourceType = null;
public String getXForwardedFor() { return XForwardedFor; }
public UserFindByLoginRequest setXForwardedFor(String value) { this.XForwardedFor = value; return this; }
public String getApiKey() { return ApiKey; }
public UserFindByLoginRequest setApiKey(String value) { this.ApiKey = value; return this; }
public Integer getStoreId() { return StoreId; }
public UserFindByLoginRequest setStoreId(Integer value) { this.StoreId = value; return this; }
public Integer getChainId() { return ChainId; }
public UserFindByLoginRequest setChainId(Integer value) { this.ChainId = value; return this; }
public String getUserName() { return UserName; }
public UserFindByLoginRequest setUserName(String value) { this.UserName = value; return this; }
public String getPassword() { return Password; }
public UserFindByLoginRequest setPassword(String value) { this.Password = value; return this; }
public Integer getRestrictedId() { return RestrictedId; }
public UserFindByLoginRequest setRestrictedId(Integer value) { this.RestrictedId = value; return this; }
public RestrictedResourceType getRestrictedResourceType() { return RestrictedResourceType; }
public UserFindByLoginRequest setRestrictedResourceType(RestrictedResourceType value) { this.RestrictedResourceType = value; return this; }
}
public static class UserFindByLoginRequestDto extends ApiDtoBase
{
public Integer UserId = null;
public String UserName = null;
public String Password = null;
public Integer getUserId() { return UserId; }
public UserFindByLoginRequestDto setUserId(Integer value) { this.UserId = value; return this; }
public String getUserName() { return UserName; }
public UserFindByLoginRequestDto setUserName(String value) { this.UserName = value; return this; }
public String getPassword() { return Password; }
public UserFindByLoginRequestDto setPassword(String value) { this.Password = value; return this; }
}
public static class ApiDtoBase implements IApiDtoBase
{
public String ApiKey = null;
public Integer StoreId = null;
public Integer ChainId = null;
public String getApiKey() { return ApiKey; }
public ApiDtoBase setApiKey(String value) { this.ApiKey = value; return this; }
public Integer getStoreId() { return StoreId; }
public ApiDtoBase setStoreId(Integer value) { this.StoreId = value; return this; }
public Integer getChainId() { return ChainId; }
public ApiDtoBase setChainId(Integer value) { this.ChainId = value; return this; }
}
public static enum RestrictedResourceType
{
Store,
Chain,
User,
Undefined;
}
public static class UserFindByLoginResponse extends UserFindByLoginResponseDto
{
public AuthenticationResult AuthenticationResult = null;
public Integer HomeStoreId = null;
public Integer UserId = null;
public AuthenticationResult getAuthenticationResult() { return AuthenticationResult; }
public UserFindByLoginResponse setAuthenticationResult(AuthenticationResult value) { this.AuthenticationResult = value; return this; }
public Integer getHomeStoreId() { return HomeStoreId; }
public UserFindByLoginResponse setHomeStoreId(Integer value) { this.HomeStoreId = value; return this; }
public Integer getUserId() { return UserId; }
public UserFindByLoginResponse setUserId(Integer value) { this.UserId = value; return this; }
}
public static class UserFindByLoginResponseDto extends ApiResponseBase
{
public Integer HomeStoreId = null;
public Integer UserId = null;
public Integer getHomeStoreId() { return HomeStoreId; }
public UserFindByLoginResponseDto setHomeStoreId(Integer value) { this.HomeStoreId = value; return this; }
public Integer getUserId() { return UserId; }
public UserFindByLoginResponseDto setUserId(Integer value) { this.UserId = value; return this; }
}
public static class ApiResponseBase
{
public Boolean Success = null;
public String Message = null;
public Boolean isSuccess() { return Success; }
public ApiResponseBase setSuccess(Boolean value) { this.Success = value; return this; }
public String getMessage() { return Message; }
public ApiResponseBase setMessage(String value) { this.Message = value; return this; }
}
public static enum AuthenticationResult
{
InvalidPassword(0),
SuccessExpired(11),
SuccessChangePassword(12),
SuccessWeakPassword(21),
Success(31),
CryptographicError(-100),
Disabled(-22),
Locked(-21),
FailedPasswordHistory(-15),
FailedWeakPassword(-12),
InvalidConfirmation(-11),
Error(-1);
private final int value;
AuthenticationResult(final int intValue) { value = intValue; }
public int getValue() { return value; }
}
}
Java UserFindByLoginRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /users/find/login-details HTTP/1.1 Host: www.clubready.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
AuthenticationResult: InvalidPassword,
HomeStoreId: 0,
UserId: 0,
Success: False,
Message: String
}