ClubReady Api

<back to all web services

UserFindByLoginRequest

The following routes are available for this service:
GET/users/find/login-detailsVerify a user's login details.
import java.math.*
import java.util.*
import net.servicestack.client.*


@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)
open class UserFindByLoginRequest : UserFindByLoginRequestDto(), IRestrictedApiRequest
{
    /**
    * IP address of the end user
    */
    @ApiMember(Description="IP address of the end user", Name="X-Forwarded-For", ParameterType="header")
    var XForwardedFor:String? = null

    /**
    * Api Key - grants access to resources
    */
    @ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")
    var ApiKey:String? = null

    /**
    * ClubReady Club ID (StoreID internally)
    */
    @ApiMember(DataType="integer", Description="ClubReady Club ID (StoreID internally)", Name="StoreId", ParameterType="query")
    var StoreId:Int? = null

    /**
    * StoreId OR ChainId is required
    */
    @ApiMember(DataType="integer", Description="StoreId OR ChainId is required", Name="ChainId", ParameterType="query")
    var ChainId:Int? = null

    /**
    * ClubReady username
    */
    @ApiMember(DataType="string", Description="ClubReady username", IsRequired=true, Name="UserName", ParameterType="query")
    var UserName:String? = null

    /**
    * ClubReady password
    */
    @ApiMember(DataType="string", Description="ClubReady password", IsRequired=true, Name="Password", ParameterType="query")
    var Password:String? = null

    var RestrictedId:Int? = null
    var RestrictedResourceType:RestrictedResourceType? = null
}

open class UserFindByLoginRequestDto : ApiDtoBase()
{
    var UserId:Int? = null
    var UserName:String? = null
    var Password:String? = null
}

open class ApiDtoBase : IApiDtoBase
{
    var ApiKey:String? = null
    var StoreId:Int? = null
    var ChainId:Int? = null
}

enum class RestrictedResourceType
{
    Store,
    Chain,
    User,
    Undefined,
}

open class UserFindByLoginResponse : UserFindByLoginResponseDto()
{
    var AuthenticationResult:AuthenticationResult? = null
    var HomeStoreId:Int? = null
    var UserId:Int? = null
}

open class UserFindByLoginResponseDto : ApiResponseBase()
{
    var HomeStoreId:Int? = null
    var UserId:Int? = null
}

open class ApiResponseBase
{
    var Success:Boolean? = null
    var Message:String? = null
}

enum class AuthenticationResult(val value:Int)
{
    InvalidPassword(0),
    SuccessExpired(11),
    SuccessChangePassword(12),
    SuccessWeakPassword(21),
    Success(31),
    CryptographicError(-100),
    Disabled(-22),
    Locked(-21),
    FailedPasswordHistory(-15),
    FailedWeakPassword(-12),
    InvalidConfirmation(-11),
    Error(-1),
}

Kotlin UserFindByLoginRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

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: clubready.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<UserFindByLoginResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubReady.Web.Api.Members.Model">
  <Message xmlns="http://schemas.datacontract.org/2004/07/ClubReady.Core.Api.Models">String</Message>
  <Success xmlns="http://schemas.datacontract.org/2004/07/ClubReady.Core.Api.Models">false</Success>
  <HomeStoreId xmlns="http://schemas.datacontract.org/2004/07/ClubReady.Core.Api.Models">0</HomeStoreId>
  <UserId xmlns="http://schemas.datacontract.org/2004/07/ClubReady.Core.Api.Models">0</UserId>
  <AuthenticationResult>InvalidPassword</AuthenticationResult>
</UserFindByLoginResponse>