Six4Win.WebApi

<back to all web services

GetSuperWinAccumulations

The following routes are available for this service:
All Verbs/qry/super-win/accumulations
namespace Six4Win.WebApi.ServiceModel

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

    type SuperWinPoolState =
        | Idle = 0
        | Accumulating = 1
        | Awarding = 2

    [<AllowNullLiteral>]
    type BettingApp() = 
        member val Name:String = null with get,set
        member val Version: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 RefEx() = 
        inherit Ref()
        member val Data:RecordDictionary<String, String> = null with get,set

    [<AllowNullLiteral>]
    type Origin() = 
        member val Application:BettingApp = null with get,set
        member val IP:String = null with get,set
        member val Organization:RefEx = null with get,set
        member val Region:Ref = null with get,set
        member val LocationGroup:Ref = null with get,set
        member val Location:RefEx = null with get,set
        member val Device:RefEx = null with get,set
        member val Clerk:Ref = null with get,set

    [<AllowNullLiteral>]
    type SuperWinWinner() = 
        member val IsDrawn:Boolean = new Boolean() with get,set
        member val DrawnAtUtc:DateTime = new DateTime() with get,set
        member val RoundId:String = null with get,set
        member val BetId:String = null with get,set
        member val SlipId:String = null with get,set
        member val Origin:Origin = null with get,set
        member val Bettor:Ref = null with get,set
        member val Code:String = null with get,set
        member val Amount:Decimal = new Decimal() with get,set
        member val LocationAddressOrBettorInfo:String = null with get,set

    [<AllowNullLiteral>]
    type SuperWinPrize() = 
        member val Id:Int32 = new Int32() with get,set
        member val Amount:Decimal = new Decimal() with get,set
        member val ScheduledAt:DateTime = new DateTime() with get,set
        member val Winner:SuperWinWinner = null with get,set

    [<AllowNullLiteral>]
    type SuperWinPool() = 
        member val Id:Int32 = new Int32() with get,set
        member val State:SuperWinPoolState = new SuperWinPoolState() with get,set
        member val Amount:Decimal = new Decimal() with get,set
        member val Schedule:RecordList<SuperWinPrize> = null with get,set

    [<AllowNullLiteral>]
    type SuperWinState() = 
        member val CurrentDate:String = null with get,set
        member val AvailableAmount:Decimal = new Decimal() with get,set
        member val Pools:RecordDictionary<Int32, SuperWinPool> = null with get,set

    [<AllowNullLiteral>]
    type SuperWinStateDoc() = 
        member val Id:String = null with get,set
        member val State:SuperWinState = null with get,set

    [<AllowNullLiteral>]
    type GetSuperWinAccumulations() = 
        class end

    [<AllowNullLiteral>]
    type RecordDictionary<TKey, TVal>() = 
        inherit Dictionary<TKey, TVal>()

    [<AllowNullLiteral>]
    type RecordList<T>() = 
        inherit ResizeArray<T>()

F# GetSuperWinAccumulations 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 /qry/super-win/accumulations HTTP/1.1 
Host: s4w2.api.bettor.cc 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	state: 
	{
		currentDate: String,
		availableAmount: 0,
		pools: 
		{
			0: 
			{
				id: 0,
				state: 0,
				amount: 0,
				schedule: 
				[
					{
						id: 0,
						amount: 0,
						scheduledAt: 0001-01-01,
						winner: 
						{
							isDrawn: False,
							drawnAtUtc: 0001-01-01,
							roundId: String,
							betId: String,
							slipId: String,
							origin: 
							{
								application: 
								{
									name: String,
									version: String
								},
								ip: String,
								organization: 
								{
									data: 
									{
										String: String
									},
									id: String,
									val: String
								},
								region: 
								{
									id: String,
									val: String
								},
								locationGroup: 
								{
									id: String,
									val: String
								},
								location: 
								{
									data: 
									{
										String: String
									},
									id: String,
									val: String
								},
								device: 
								{
									data: 
									{
										String: String
									},
									id: String,
									val: String
								},
								clerk: 
								{
									id: String,
									val: String
								}
							},
							bettor: 
							{
								id: String,
								val: String
							},
							code: String,
							amount: 0,
							locationAddressOrBettorInfo: String
						}
					}
				]
			}
		}
	}
}