| POST | /cmd/users/register |
|---|
namespace Betting.WebApi.ServiceModel
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type LoginCredentials() =
member val Username:String = null with get,set
member val Password:String = null with get,set
[<AllowNullLiteral>]
type Name() =
member val First:String = null with get,set
member val Last:String = null with get,set
member val Full:String = null with get,set
[<AllowNullLiteral>]
type Ref() =
member val Id:String = null with get,set
member val Val:String = null with get,set
[<AllowNullLiteral>]
type GPSCoordinates() =
member val Lat:Double = new Double() with get,set
member val Lng:Double = new Double() with get,set
[<AllowNullLiteral>]
type Address() =
member val Street:String = null with get,set
member val City:String = null with get,set
member val State:String = null with get,set
member val PostalCode:String = null with get,set
member val Country:Ref = null with get,set
member val GPS:GPSCoordinates = null with get,set
member val Data:RecordDictionary<String, String> = null with get,set
[<AllowNullLiteral>]
type ContactInfo() =
member val Phone:String = null with get,set
member val Email:String = null with get,set
[<AllowNullLiteral>]
type Person() =
member val Name:Name = null with get,set
member val Address:Address = null with get,set
member val DateOfBirth:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ContactInfo:ContactInfo = null with get,set
[<AllowNullLiteral>]
type AvatarImage() =
member val Base64:String = null with get,set
member val Tag:String = null with get,set
[<AllowNullLiteral>]
type NewUserDTO() =
member val ExternalUserId:String = null with get,set
member val Credentials:LoginCredentials = null with get,set
member val Person:Person = null with get,set
member val Roles:RecordList<String> = null with get,set
member val Avatar:AvatarImage = null with get,set
[<AllowNullLiteral>]
type RegisterUserAccount() =
member val Id:String = null with get,set
member val NewUserDTO:NewUserDTO = null with get,set
[<AllowNullLiteral>]
type RecordDictionary<TKey, TVal>() =
inherit Dictionary<TKey, TVal>()
[<AllowNullLiteral>]
type RecordList<T>() =
inherit ResizeArray<T>()
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /cmd/users/register HTTP/1.1
Host: api.sbbet.ath.cx
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"id":"String","newUserDTO":{"externalUserId":"String","credentials":{"username":"String","password":"String"},"person":{"name":{"first":"String","last":"String","full":"String String"},"address":{"street":"String","city":"String","state":"String","postalCode":"String","country":{"id":"String","val":"String"},"gps":{"lat":0,"lng":0},"data":{"String":"String"}},"dateOfBirth":"0001-01-01T00:00:00.0000000Z","contactInfo":{"phone":"String","email":"String"}},"roles":["String"],"avatar":{"base64":"String","tag":"String"}}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}