| Required role: | Partner |
| POST | /clientregister |
|---|
import Foundation
import ServiceStack
public class ClientRegister : Codable
{
// @Validate(Validator="Email")
public var eMail:String
// @Validate(Validator="[NotNull,NotEmpty]")
public var firstName:String
// @Validate(Validator="[NotNull,NotEmpty]")
public var lastName:String
// @Validate(Validator="[NotNull,NotEmpty]")
public var password:String
public var confirmPassword:String
// @Validate(Validator="NotNull")
public var company:String
public var partnerUserID:Int
public var roles:[String]
public var responseStatus:ResponseStatus
required public init(){}
}
public class UserAuth : Codable
{
public var id:Int
public var userName:String
public var email:String
public var primaryEmail:String
public var phoneNumber:String
public var firstName:String
public var lastName:String
public var displayName:String
public var company:String
public var birthDate:Date?
public var birthDateRaw:String
public var address:String
public var address2:String
public var city:String
public var state:String
public var country:String
public var culture:String
public var fullName:String
public var gender:String
public var language:String
public var mailAddress:String
public var nickname:String
public var postalCode:String
public var timeZone:String
public var salt:String
public var passwordHash:String
public var digestHa1Hash:String
public var roles:[String]
public var permissions:[String]
public var createdDate:Date
public var modifiedDate:Date
public var invalidLoginAttempts:Int
public var lastLoginAttempt:Date?
public var lockedDate:Date?
public var recoveryToken:String
public var refId:Int?
public var refIdStr:String
public var meta:[String:String]
required public init(){}
}
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 /clientregister HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
EMail: String,
FirstName: String,
LastName: String,
Password: String,
ConfirmPassword: String,
Company: String,
PartnerUserID: 0,
Roles:
[
String
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Id: 0,
UserName: String,
Email: String,
PrimaryEmail: String,
PhoneNumber: String,
FirstName: String,
LastName: String,
DisplayName: String,
Company: 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,
Salt: String,
PasswordHash: String,
DigestHa1Hash: String,
Roles:
[
String
],
Permissions:
[
String
],
CreatedDate: 0001-01-01,
ModifiedDate: 0001-01-01,
InvalidLoginAttempts: 0,
LastLoginAttempt: 0001-01-01,
LockedDate: 0001-01-01,
RecoveryToken: String,
RefId: 0,
RefIdStr: String,
Meta:
{
String: String
}
}