GET,POST | /auth/{provider} | ||
---|---|---|---|
GET,POST | /auth |
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
/**
* Sign In
*/
@Api(Description="Sign In")
@DataContract
public static class Authenticate implements IPost, IMeta
{
/**
* AuthProvider, e.g. credentials
*/
@DataMember(Order=1)
public String provider = null;
@DataMember(Order=2)
public String UserName = null;
@DataMember(Order=3)
public String Password = null;
@DataMember(Order=4)
public Boolean RememberMe = null;
@DataMember(Order=5)
public String AccessToken = null;
@DataMember(Order=6)
public String AccessTokenSecret = null;
@DataMember(Order=7)
public String ReturnUrl = null;
@DataMember(Order=8)
public String ErrorView = null;
@DataMember(Order=9)
public HashMap<String,String> Meta = null;
public String getProvider() { return provider; }
public Authenticate setProvider(String value) { this.provider = value; return this; }
public String getUserName() { return UserName; }
public Authenticate setUserName(String value) { this.UserName = value; return this; }
public String getPassword() { return Password; }
public Authenticate setPassword(String value) { this.Password = value; return this; }
public Boolean isRememberMe() { return RememberMe; }
public Authenticate setRememberMe(Boolean value) { this.RememberMe = value; return this; }
public String getAccessToken() { return AccessToken; }
public Authenticate setAccessToken(String value) { this.AccessToken = value; return this; }
public String getAccessTokenSecret() { return AccessTokenSecret; }
public Authenticate setAccessTokenSecret(String value) { this.AccessTokenSecret = value; return this; }
public String getReturnUrl() { return ReturnUrl; }
public Authenticate setReturnUrl(String value) { this.ReturnUrl = value; return this; }
public String getErrorView() { return ErrorView; }
public Authenticate setErrorView(String value) { this.ErrorView = value; return this; }
public HashMap<String,String> getMeta() { return Meta; }
public Authenticate setMeta(HashMap<String,String> value) { this.Meta = value; return this; }
}
@DataContract
public static class AuthenticateResponse implements IMeta, IHasSessionId, IHasBearerToken
{
@DataMember(Order=1)
public String UserId = null;
@DataMember(Order=2)
public String SessionId = null;
@DataMember(Order=3)
public String UserName = null;
@DataMember(Order=4)
public String DisplayName = null;
@DataMember(Order=5)
public String ReferrerUrl = null;
@DataMember(Order=6)
public String BearerToken = null;
@DataMember(Order=7)
public String RefreshToken = null;
@DataMember(Order=8)
public Date RefreshTokenExpiry = null;
@DataMember(Order=9)
public String ProfileUrl = null;
@DataMember(Order=10)
public ArrayList<String> Roles = null;
@DataMember(Order=11)
public ArrayList<String> Permissions = null;
@DataMember(Order=12)
public ResponseStatus ResponseStatus = null;
@DataMember(Order=13)
public HashMap<String,String> Meta = null;
public String getUserId() { return UserId; }
public AuthenticateResponse setUserId(String value) { this.UserId = value; return this; }
public String getSessionId() { return SessionId; }
public AuthenticateResponse setSessionId(String value) { this.SessionId = value; return this; }
public String getUserName() { return UserName; }
public AuthenticateResponse setUserName(String value) { this.UserName = value; return this; }
public String getDisplayName() { return DisplayName; }
public AuthenticateResponse setDisplayName(String value) { this.DisplayName = value; return this; }
public String getReferrerUrl() { return ReferrerUrl; }
public AuthenticateResponse setReferrerUrl(String value) { this.ReferrerUrl = value; return this; }
public String getBearerToken() { return BearerToken; }
public AuthenticateResponse setBearerToken(String value) { this.BearerToken = value; return this; }
public String getRefreshToken() { return RefreshToken; }
public AuthenticateResponse setRefreshToken(String value) { this.RefreshToken = value; return this; }
public Date getRefreshTokenExpiry() { return RefreshTokenExpiry; }
public AuthenticateResponse setRefreshTokenExpiry(Date value) { this.RefreshTokenExpiry = value; return this; }
public String getProfileUrl() { return ProfileUrl; }
public AuthenticateResponse setProfileUrl(String value) { this.ProfileUrl = value; return this; }
public ArrayList<String> getRoles() { return Roles; }
public AuthenticateResponse setRoles(ArrayList<String> value) { this.Roles = value; return this; }
public ArrayList<String> getPermissions() { return Permissions; }
public AuthenticateResponse setPermissions(ArrayList<String> value) { this.Permissions = value; return this; }
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public AuthenticateResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
public HashMap<String,String> getMeta() { return Meta; }
public AuthenticateResponse setMeta(HashMap<String,String> value) { this.Meta = value; return this; }
}
}
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.
POST /auth/{provider} HTTP/1.1
Host: initiation-pen.sirva.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
provider: String,
UserName: String,
Password: String,
RememberMe: False,
AccessToken: String,
AccessTokenSecret: String,
ReturnUrl: String,
ErrorView: String,
Meta:
{
String: String
}
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { UserId: String, SessionId: String, UserName: String, DisplayName: String, ReferrerUrl: String, BearerToken: String, RefreshToken: String, RefreshTokenExpiry: 0001-01-01, ProfileUrl: String, Roles: [ String ], Permissions: [ String ], ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } }, Meta: { String: String } }