| All Verbs | /qry/rounds/draw/diagnostics |
|---|
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
[<AllowNullLiteral>]
type Initialization() =
member val DataLoadDuration:Int64 = new Int64() with get,set
member val BetsCollectionsCreationDuration:Int64 = new Int64() with get,set
member val CombinationsOccuranceLookupInitializationDuration:Int64 = new Int64() with get,set
[<AllowNullLiteral>]
type SequenceGeneration() =
member val NrOfThreads:Int32 = new Int32() with get,set
member val NrOfResultsProbed:Int32 = new Int32() with get,set
member val Duration:Int64 = new Int64() with get,set
member val AvgSinglePassDuration:Int64 = new Int64() with get,set
type SortingOrder =
| None = 0
| Ascending = 1
| Descending = 2
[<AllowNullLiteral>]
type BestFitFinder() =
member val TargetAmount:Decimal = new Decimal() with get,set
member val AwardedAmount:Decimal = new Decimal() with get,set
member val Deviation:Decimal = new Decimal() with get,set
member val DeviationPct:Decimal = new Decimal() with get,set
member val SequenceResultType:String = null with get,set
member val IsJackPot5Drawn:Boolean = new Boolean() with get,set
member val FilteringPeriod:Int64 = new Int64() with get,set
member val WinCountOrder:SortingOrder = new SortingOrder() with get,set
member val MinAmount:Decimal = new Decimal() with get,set
member val MaxAmount:Decimal = new Decimal() with get,set
[<AllowNullLiteral>]
type Bet() =
member val IsFound:Boolean = new Boolean() with get,set
member val BetId:String = null with get,set
member val SlipId:String = null with get,set
member val CombStake:Object = null with get,set
[<AllowNullLiteral>]
type QualifiedPool() =
member val Id:Int32 = new Int32() with get,set
member val Name:String = null with get,set
member val Coefficient:Decimal = new Decimal() with get,set
member val AvailableAmount:Decimal = new Decimal() with get,set
member val AwardedAmount:Decimal = new Decimal() with get,set
member val TargetBet:Bet = null with get,set
[<AllowNullLiteral>]
type Purger() =
member val PrevalentStake:Decimal = new Decimal() with get,set
member val PoolPurger:String = null with get,set
member val QualifiedPools:ResizeArray<QualifiedPool> = null with get,set
type ResponseStatus =
| Failure = 0
| Success = 1
[<AllowNullLiteral>]
type StimulationResponse() =
member val StimulationId:String = null with get,set
member val Status:ResponseStatus = new ResponseStatus() with get,set
member val FailureReason:String = null with get,set
member val SlipId:String = null with get,set
member val BetId:String = null with get,set
member val AmountAwarded:Decimal = new Decimal() with get,set
[<AllowNullLiteral>]
type CurrentRoundInfo() =
member val RoundId:String = null with get,set
member val Amount:Decimal = new Decimal() with get,set
member val InertCode:String = null with get,set
[<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 WinnerByCode() =
member val RoundId:String = null with get,set
member val DrawnAtUtc:DateTime = new DateTime() with get,set
member val SlipId:String = null with get,set
member val BetId:String = null with get,set
member val Code:String = null with get,set
member val Amount:Decimal = new Decimal() with get,set
member val Origin:Origin = null with get,set
member val Bettor:Ref = null with get,set
member val LocationAddressOrBettorInfo:String = null with get,set
[<AllowNullLiteral>]
type LocalCodePotInfo() =
member val IsActive:Boolean = new Boolean() with get,set
member val Current:CurrentRoundInfo = null with get,set
member val Winners:ResizeArray<WinnerByCode> = null with get,set
[<AllowNullLiteral>]
type SuperWinInfo() =
member val DurationInMs:Int64 = new Int64() with get,set
[<AllowNullLiteral>]
type HappyHourInfo() =
member val IsHappyHour:Boolean = new Boolean() with get,set
member val OddsModifier:Decimal = new Decimal() with get,set
member val RoundPoolBonusPct:Decimal = new Decimal() with get,set
[<AllowNullLiteral>]
type AccumulatorConfiguration() =
inherit AccumulatorConfiguration()
member val Id:String = null with get,set
member val UpdatedAt:DateTime = new DateTime() with get,set
type SyphonType =
| Location = 0
| Bettor = 1
[<AllowNullLiteral>]
type Syphon() =
member val Id:String = null with get,set
member val Name:String = null with get,set
member val Type:SyphonType = new SyphonType() with get,set
member val NrOfCombinations:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type SyphonInfo() =
member val Bettors:Dictionary<String, Syphon> = null with get,set
member val Locations:Dictionary<String, Syphon> = null with get,set
member val HasSyphons:Boolean = new Boolean() with get,set
member val TotalSyphonsInRound:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type DrawDiagnostics() =
member val Id:String = null with get,set
member val InitializationInfo:Initialization = null with get,set
member val SequenceGenerationInfo:SequenceGeneration = null with get,set
member val BestFitFinderInfo:BestFitFinder = null with get,set
member val PurgerInfo:Purger = null with get,set
member val Duration:Int64 = new Int64() with get,set
member val StimulationResponses:ResizeArray<StimulationResponse> = null with get,set
member val LocalCodePot:LocalCodePotInfo = null with get,set
member val SuperWin:SuperWinInfo = null with get,set
member val HappyHour:HappyHourInfo = null with get,set
member val Reasoning:String = null with get,set
member val Configuration:AccumulatorConfiguration = null with get,set
member val SyphonInfo:SyphonInfo = null with get,set
[<AllowNullLiteral>]
type GetDrawDignostics() =
member val Id:String = null with get,set
[<AllowNullLiteral>]
type RecordDictionary<TKey, TVal>() =
inherit Dictionary<TKey, TVal>()
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 /qry/rounds/draw/diagnostics HTTP/1.1
Host: s4w2.api.bettor.cc
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
id: String,
initializationInfo:
{
dataLoadDuration: 0,
betsCollectionsCreationDuration: 0,
combinationsOccuranceLookupInitializationDuration: 0
},
sequenceGenerationInfo:
{
nrOfThreads: 0,
nrOfResultsProbed: 0,
duration: 0,
avgSinglePassDuration: 0
},
bestFitFinderInfo:
{
targetAmount: 0,
awardedAmount: 0,
deviation: 0,
deviationPct: 0,
sequenceResultType: String,
isJackPot5Drawn: False,
filteringPeriod: 0,
winCountOrder: 0,
minAmount: 0,
maxAmount: 0
},
purgerInfo:
{
prevalentStake: 0,
poolPurger: String,
qualifiedPools:
[
{
id: 0,
name: String,
coefficient: 0,
availableAmount: 0,
awardedAmount: 0,
targetBet:
{
isFound: False,
betId: String,
slipId: String,
combStake: {}
}
}
]
},
duration: 0,
stimulationResponses:
[
{
stimulationId: String,
status: 0,
failureReason: String,
slipId: String,
betId: String,
amountAwarded: 0
}
],
localCodePot:
{
durationInMs: 0
},
superWin:
{
durationInMs: 0
},
happyHour:
{
isHappyHour: False,
oddsModifier: 0,
roundPoolBonusPct: 0
},
reasoning: String,
configuration:
{
pools:
[
{
id: 0,
name: String,
rtp: 0,
reserveRTP: 0,
totalRTP: 0
}
],
prevalentStake: 0,
purgeThresholdModifier: 0,
locationOptimizationLevel: 0,
jackPot5ThresholdInterval:
{
start: 0,
end: 0
},
deviationCategorySpanInPct: 0,
deviationCategoryThresholdAmount: 0,
roundPoolCircuitBreakerThreshold: 0,
lowWinCountAffinityInPct: 0,
winCountOrderAffinity:
[
{
order: 0,
probability: 0
}
],
highRollerSettings:
{
pools:
[
{
id: 0,
name: String,
isActive: False,
contributionToRoundPoolPct: 0,
caps:
{
plusCoef: 0,
minusCoef: 0,
maxAmountInPrevalentStakes: 0
}
}
],
categoryThresholds:
[
{
category: 0,
threshold: 0
}
]
},
overflowCoefficientPoolsToRound: False,
antiSyphonProtectionOverride: False,
fraudDetectionConfig:
{
antiSyphon:
{
combinationCountPerRoundThresholdPct: 0,
excludedLocations:
[
{
id: String,
val: String
}
],
includeRoundPctAsBettorSyphonCriteria: False,
isActive: False
}
},
debugConfig:
{
logLocationStats: False,
logBettorSats: False
}
},
syphonInfo:
{
bettors:
{
String:
{
id: String,
name: String,
type: 0,
nrOfCombinations: 0
}
},
locations:
{
String:
{
id: String,
name: String,
type: 0,
nrOfCombinations: 0
}
},
hasSyphons: True,
totalSyphonsInRound: 2
}
}