| POST | /signup/create_user | 
|---|
import Foundation
import ServiceStack
public enum Sex : String, Codable
{
    case Male
    case Female
}
public class DateOfBirth : Codable
{
    public var year:Int
    public var month:Int
    public var dayOfMonth:Int
    required public init(){}
}
public class HomeLocation : Codable
{
    public var address:UserAddress
    public var latitude:Float
    public var longitude:Float
    required public init(){}
}
public class UserAddress : Codable
{
    public var streetName:String
    public var streetNumber:String
    public var postalCode:String
    public var region:String
    public var countryCode: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 /signup/create_user HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
	token: String,
	firstName: String,
	lastName: String,
	sex: Male,
	dateOfBirth: 
	{
		year: 0,
		month: 0,
		dayOfMonth: 0
	},
	email: String,
	password: String,
	passwordConfirmation: String,
	home: 
	{
		address: 
		{
			streetName: String,
			streetNumber: String,
			postalCode: String,
			region: String,
			countryCode: String
		},
		latitude: 0,
		longitude: 0
	},
	acceptTermsOfService: False,
	referFriendToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
	sentVerificationEmailWithRequestId: String,
	passwordScore: 0,
	userGuid: 00000000-0000-0000-0000-000000000000,
	referFriendAwarded: False
}