Test

<back to all web services

CreateJwt

The following routes are available for this service:
All Verbs/jwt
namespace ServiceStack

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CreateJwtResponse() = 
        member val Token:String = null with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type IAuthTokens = 
        abstract Provider:String with get,set
        abstract UserId:String with get,set
        abstract AccessToken:String with get,set
        abstract AccessTokenSecret:String with get,set
        abstract RefreshToken:String with get,set
        abstract RefreshTokenExpiry:Nullable<DateTime> with get,set
        abstract RequestToken:String with get,set
        abstract RequestTokenSecret:String with get,set
        abstract Items:Dictionary<String, String> with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type AuthUserSession() = 
        [<DataMember(Order=1)>]
        member val ReferrerUrl:String = null with get,set

        [<DataMember(Order=2)>]
        member val Id:String = null with get,set

        [<DataMember(Order=3)>]
        member val UserAuthId:String = null with get,set

        [<DataMember(Order=4)>]
        member val UserAuthName:String = null with get,set

        [<DataMember(Order=5)>]
        member val UserName:String = null with get,set

        [<DataMember(Order=6)>]
        member val TwitterUserId:String = null with get,set

        [<DataMember(Order=7)>]
        member val TwitterScreenName:String = null with get,set

        [<DataMember(Order=8)>]
        member val FacebookUserId:String = null with get,set

        [<DataMember(Order=9)>]
        member val FacebookUserName:String = null with get,set

        [<DataMember(Order=10)>]
        member val FirstName:String = null with get,set

        [<DataMember(Order=11)>]
        member val LastName:String = null with get,set

        [<DataMember(Order=12)>]
        member val DisplayName:String = null with get,set

        [<DataMember(Order=13)>]
        member val Company:String = null with get,set

        [<DataMember(Order=14)>]
        member val Email:String = null with get,set

        [<DataMember(Order=15)>]
        member val PrimaryEmail:String = null with get,set

        [<DataMember(Order=16)>]
        member val PhoneNumber:String = null with get,set

        [<DataMember(Order=17)>]
        member val BirthDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember(Order=18)>]
        member val BirthDateRaw:String = null with get,set

        [<DataMember(Order=19)>]
        member val Address:String = null with get,set

        [<DataMember(Order=20)>]
        member val Address2:String = null with get,set

        [<DataMember(Order=21)>]
        member val City:String = null with get,set

        [<DataMember(Order=22)>]
        member val State:String = null with get,set

        [<DataMember(Order=23)>]
        member val Country:String = null with get,set

        [<DataMember(Order=24)>]
        member val Culture:String = null with get,set

        [<DataMember(Order=25)>]
        member val FullName:String = null with get,set

        [<DataMember(Order=26)>]
        member val Gender:String = null with get,set

        [<DataMember(Order=27)>]
        member val Language:String = null with get,set

        [<DataMember(Order=28)>]
        member val MailAddress:String = null with get,set

        [<DataMember(Order=29)>]
        member val Nickname:String = null with get,set

        [<DataMember(Order=30)>]
        member val PostalCode:String = null with get,set

        [<DataMember(Order=31)>]
        member val TimeZone:String = null with get,set

        [<DataMember(Order=32)>]
        member val RequestTokenSecret:String = null with get,set

        [<DataMember(Order=33)>]
        member val CreatedAt:DateTime = new DateTime() with get,set

        [<DataMember(Order=34)>]
        member val LastModified:DateTime = new DateTime() with get,set

        [<DataMember(Order=35)>]
        member val Roles:ResizeArray<String> = new ResizeArray<String>() with get,set

        [<DataMember(Order=36)>]
        member val Permissions:ResizeArray<String> = new ResizeArray<String>() with get,set

        [<DataMember(Order=37)>]
        member val IsAuthenticated:Boolean = new Boolean() with get,set

        [<DataMember(Order=38)>]
        member val FromToken:Boolean = new Boolean() with get,set

        [<DataMember(Order=39)>]
        member val ProfileUrl:String = null with get,set

        [<DataMember(Order=40)>]
        member val Sequence:String = null with get,set

        [<DataMember(Order=41)>]
        member val Tag:Int64 = new Int64() with get,set

        [<DataMember(Order=42)>]
        member val AuthProvider:String = null with get,set

        [<DataMember(Order=43)>]
        member val ProviderOAuthAccess:ResizeArray<IAuthTokens> = new ResizeArray<IAuthTokens>() with get,set

        [<DataMember(Order=44)>]
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set

        [<DataMember(Order=45)>]
        member val Audiences:ResizeArray<String> = new ResizeArray<String>() with get,set

        [<DataMember(Order=46)>]
        member val Scopes:ResizeArray<String> = new ResizeArray<String>() with get,set

        [<DataMember(Order=47)>]
        member val Dns:String = null with get,set

        [<DataMember(Order=48)>]
        member val Rsa:String = null with get,set

        [<DataMember(Order=49)>]
        member val Sid:String = null with get,set

        [<DataMember(Order=50)>]
        member val Hash:String = null with get,set

        [<DataMember(Order=51)>]
        member val HomePhone:String = null with get,set

        [<DataMember(Order=52)>]
        member val MobilePhone:String = null with get,set

        [<DataMember(Order=53)>]
        member val Webpage:String = null with get,set

        [<DataMember(Order=54)>]
        member val EmailConfirmed:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        [<DataMember(Order=55)>]
        member val PhoneNumberConfirmed:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        [<DataMember(Order=56)>]
        member val TwoFactorEnabled:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        [<DataMember(Order=57)>]
        member val SecurityStamp:String = null with get,set

        [<DataMember(Order=58)>]
        member val Type:String = null with get,set

        [<DataMember(Order=59)>]
        member val RecoveryToken:String = null with get,set

        [<DataMember(Order=60)>]
        member val RefId:Nullable<Int32> = new Nullable<Int32>() with get,set

        [<DataMember(Order=61)>]
        member val RefIdStr:String = null with get,set

    [<AllowNullLiteral>]
    type CreateJwt() = 
        inherit AuthUserSession()
        member val JwtExpiry:Nullable<DateTime> = new Nullable<DateTime>() with get,set

F# CreateJwt DTOs

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

HTTP + 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
		}
	}
}