FBiHBetting.Aggregator.WebApi

<back to all web services

RegisterBettor

The following routes are available for this service:
POST/bettors/register
namespace FBiHBetting.Aggregator.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 Reference() = 
        member val Id:String = null with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type Address() = 
        member val Street:String = null with get,set
        member val City:Reference = null with get,set
        member val PostalCode:String = null with get,set

    type BettorType =
        | Internet = 0
        | SMS = 1

    [<AllowNullLiteral>]
    type RegisterBettor() = 
        member val Id:String = null with get,set
        member val FullName:String = null with get,set
        member val DateOfBirth:DateTime = new DateTime() with get,set
        member val JMBG:String = null with get,set
        member val BettorAddress:Address = null with get,set
        member val Email:String = null with get,set
        member val PhoneNumber:String = null with get,set
        member val Username:String = null with get,set
        member val BankTransactionAccountNumber:String = null with get,set
        member val BettorType:BettorType = new BettorType() with get,set

F# RegisterBettor 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 /bettors/register HTTP/1.1 
Host: fbihtaapi.bettor.webhop.biz 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	fullName: String,
	dateOfBirth: 0001-01-01,
	jmbg: String,
	bettorAddress: 
	{
		street: String,
		city: 
		{
			id: String,
			value: String
		},
		postalCode: String
	},
	email: String,
	phoneNumber: String,
	username: String,
	bankTransactionAccountNumber: String,
	bettorType: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}