All Verbs | /jwt |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*
open class CreateJwt : AuthUserSession()
{
var jwtExpiry:Date? = null
}
@DataContract
open class AuthUserSession : IMeta
{
@DataMember(Order=1)
var referrerUrl:String? = null
@DataMember(Order=2)
var id:String? = null
@DataMember(Order=3)
var userAuthId:String? = null
@DataMember(Order=4)
var userAuthName:String? = null
@DataMember(Order=5)
var userName:String? = null
@DataMember(Order=6)
var twitterUserId:String? = null
@DataMember(Order=7)
var twitterScreenName:String? = null
@DataMember(Order=8)
var facebookUserId:String? = null
@DataMember(Order=9)
var facebookUserName:String? = null
@DataMember(Order=10)
var firstName:String? = null
@DataMember(Order=11)
var lastName:String? = null
@DataMember(Order=12)
var displayName:String? = null
@DataMember(Order=13)
var company:String? = null
@DataMember(Order=14)
var email:String? = null
@DataMember(Order=15)
var primaryEmail:String? = null
@DataMember(Order=16)
var phoneNumber:String? = null
@DataMember(Order=17)
var birthDate:Date? = null
@DataMember(Order=18)
var birthDateRaw:String? = null
@DataMember(Order=19)
var address:String? = null
@DataMember(Order=20)
var address2:String? = null
@DataMember(Order=21)
var city:String? = null
@DataMember(Order=22)
var state:String? = null
@DataMember(Order=23)
var country:String? = null
@DataMember(Order=24)
var culture:String? = null
@DataMember(Order=25)
var fullName:String? = null
@DataMember(Order=26)
var gender:String? = null
@DataMember(Order=27)
var language:String? = null
@DataMember(Order=28)
var mailAddress:String? = null
@DataMember(Order=29)
var nickname:String? = null
@DataMember(Order=30)
var postalCode:String? = null
@DataMember(Order=31)
var timeZone:String? = null
@DataMember(Order=32)
var requestTokenSecret:String? = null
@DataMember(Order=33)
var createdAt:Date? = null
@DataMember(Order=34)
var lastModified:Date? = null
@DataMember(Order=35)
var roles:ArrayList<String> = ArrayList<String>()
@DataMember(Order=36)
var permissions:ArrayList<String> = ArrayList<String>()
@DataMember(Order=37)
var isAuthenticated:Boolean? = null
@DataMember(Order=38)
var fromToken:Boolean? = null
@DataMember(Order=39)
var profileUrl:String? = null
@DataMember(Order=40)
var sequence:String? = null
@DataMember(Order=41)
var tag:Long? = null
@DataMember(Order=42)
var authProvider:String? = null
@DataMember(Order=43)
var providerOAuthAccess:ArrayList<IAuthTokens> = ArrayList<IAuthTokens>()
@DataMember(Order=44)
var meta:HashMap<String,String> = HashMap<String,String>()
@DataMember(Order=45)
var audiences:ArrayList<String> = ArrayList<String>()
@DataMember(Order=46)
var scopes:ArrayList<String> = ArrayList<String>()
@DataMember(Order=47)
var dns:String? = null
@DataMember(Order=48)
var rsa:String? = null
@DataMember(Order=49)
var sid:String? = null
@DataMember(Order=50)
var hash:String? = null
@DataMember(Order=51)
var homePhone:String? = null
@DataMember(Order=52)
var mobilePhone:String? = null
@DataMember(Order=53)
var webpage:String? = null
@DataMember(Order=54)
var emailConfirmed:Boolean? = null
@DataMember(Order=55)
var phoneNumberConfirmed:Boolean? = null
@DataMember(Order=56)
var twoFactorEnabled:Boolean? = null
@DataMember(Order=57)
var securityStamp:String? = null
@DataMember(Order=58)
@SerializedName("type") var Type:String? = null
@DataMember(Order=59)
var recoveryToken:String? = null
@DataMember(Order=60)
var refId:Int? = null
@DataMember(Order=61)
var refIdStr:String? = null
}
open interface IAuthTokens
{
var provider:String?
var userId:String?
var accessToken:String?
var accessTokenSecret:String?
var refreshToken:String?
var refreshTokenExpiry:Date?
var requestToken:String?
var requestTokenSecret:String?
var items:HashMap<String,String>?
}
open class CreateJwtResponse
{
var token:String? = null
var responseStatus:ResponseStatus? = null
}
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 /jwt HTTP/1.1
Host: test.servicestack.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
jwtExpiry: 0001-01-01,
referrerUrl: String,
id: String,
userAuthId: String,
userAuthName: String,
userName: String,
twitterUserId: String,
twitterScreenName: String,
facebookUserId: String,
facebookUserName: String,
firstName: String,
lastName: String,
displayName: String,
company: String,
email: String,
primaryEmail: String,
phoneNumber: String,
birthDate: 0001-01-01,
birthDateRaw: String,
address: String,
address2: String,
city: String,
state: String,
country: String,
culture: String,
fullName: String,
gender: String,
language: String,
mailAddress: String,
nickname: String,
postalCode: String,
timeZone: String,
requestTokenSecret: String,
createdAt: 0001-01-01,
lastModified: 0001-01-01,
roles:
[
String
],
permissions:
[
String
],
isAuthenticated: False,
fromToken: False,
profileUrl: String,
sequence: String,
tag: 0,
authProvider: String,
providerOAuthAccess:
[
{
}
],
meta:
{
String: String
},
audiences:
[
String
],
scopes:
[
String
],
dns: String,
rsa: String,
sid: String,
hash: String,
homePhone: String,
mobilePhone: String,
webpage: String,
emailConfirmed: False,
phoneNumberConfirmed: False,
twoFactorEnabled: False,
securityStamp: String,
type: String,
recoveryToken: String,
refId: 0,
refIdStr: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { token: String, responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } } }