Six4Win.WebApi

<back to all web services

GetDrawDignostics

The following routes are available for this service:
All Verbs/qry/rounds/draw/diagnostics
package dtos

import (
	"time"
)

type Initialization struct {
	DataLoadDuration                                  int64 `json:"dataLoadDuration,omitempty"`
	BetsCollectionsCreationDuration                   int64 `json:"betsCollectionsCreationDuration,omitempty"`
	CombinationsOccuranceLookupInitializationDuration int64 `json:"combinationsOccuranceLookupInitializationDuration,omitempty"`
}

type SequenceGeneration struct {
	NrOfThreads           int   `json:"nrOfThreads,omitempty"`
	NrOfResultsProbed     int   `json:"nrOfResultsProbed,omitempty"`
	Duration              int64 `json:"duration,omitempty"`
	AvgSinglePassDuration int64 `json:"avgSinglePassDuration,omitempty"`
}

type SortingOrder int

const (
	SortingOrderNone       SortingOrder = 0
	SortingOrderAscending  SortingOrder = 1
	SortingOrderDescending SortingOrder = 2
)

type BestFitFinder struct {
	TargetAmount       float64      `json:"targetAmount,omitempty"`
	AwardedAmount      float64      `json:"awardedAmount,omitempty"`
	Deviation          float64      `json:"deviation,omitempty"`
	DeviationPct       float64      `json:"deviationPct,omitempty"`
	SequenceResultType *string      `json:"sequenceResultType,omitempty"`
	IsJackPot5Drawn    bool         `json:"isJackPot5Drawn,omitempty"`
	FilteringPeriod    int64        `json:"filteringPeriod,omitempty"`
	WinCountOrder      SortingOrder `json:"winCountOrder,omitempty"`
	MinAmount          float64      `json:"minAmount,omitempty"`
	MaxAmount          float64      `json:"maxAmount,omitempty"`
}

type Bet struct {
	IsFound   bool         `json:"isFound,omitempty"`
	BetId     *string      `json:"betId,omitempty"`
	SlipId    *string      `json:"slipId,omitempty"`
	CombStake *interface{} `json:"combStake,omitempty"`
}

type QualifiedPool struct {
	Id              int     `json:"id,omitempty"`
	Name            *string `json:"name,omitempty"`
	Coefficient     float64 `json:"coefficient,omitempty"`
	AvailableAmount float64 `json:"availableAmount,omitempty"`
	AwardedAmount   float64 `json:"awardedAmount,omitempty"`
	TargetBet       *Bet    `json:"targetBet,omitempty"`
}

type Purger struct {
	PrevalentStake float64         `json:"prevalentStake,omitempty"`
	PoolPurger     *string         `json:"poolPurger,omitempty"`
	QualifiedPools []QualifiedPool `json:"qualifiedPools,omitempty"`
}

type ResponseStatus int

const (
	ResponseStatusFailure ResponseStatus = 0
	ResponseStatusSuccess ResponseStatus = 1
)

type StimulationResponse struct {
	StimulationId *string        `json:"stimulationId,omitempty"`
	Status        ResponseStatus `json:"status,omitempty"`
	FailureReason *string        `json:"failureReason,omitempty"`
	SlipId        *string        `json:"slipId,omitempty"`
	BetId         *string        `json:"betId,omitempty"`
	AmountAwarded float64        `json:"amountAwarded,omitempty"`
}

type CurrentRoundInfo struct {
	RoundId   *string `json:"roundId,omitempty"`
	Amount    float64 `json:"amount,omitempty"`
	InertCode *string `json:"inertCode,omitempty"`
}

type BettingApp struct {
	Name    *string `json:"name,omitempty"`
	Version *string `json:"version,omitempty"`
}

type Ref struct {
	Id  string `json:"id"`
	Val string `json:"val"`
}

type RefEx struct {
	Ref
	Data RecordDictionary[string, string] `json:"data"`
}

type Origin struct {
	Application   *BettingApp `json:"application,omitempty"`
	Ip            *string     `json:"ip,omitempty"`
	Organization  *RefEx      `json:"organization,omitempty"`
	Region        *Ref        `json:"region,omitempty"`
	LocationGroup *Ref        `json:"locationGroup,omitempty"`
	Location      *RefEx      `json:"location,omitempty"`
	Device        *RefEx      `json:"device,omitempty"`
	Clerk         *Ref        `json:"clerk,omitempty"`
}

type WinnerByCode struct {
	RoundId                     *string   `json:"roundId,omitempty"`
	DrawnAtUtc                  time.Time `json:"drawnAtUtc,omitempty"`
	SlipId                      *string   `json:"slipId,omitempty"`
	BetId                       *string   `json:"betId,omitempty"`
	Code                        *string   `json:"code,omitempty"`
	Amount                      float64   `json:"amount,omitempty"`
	Origin                      *Origin   `json:"origin,omitempty"`
	Bettor                      *Ref      `json:"bettor,omitempty"`
	LocationAddressOrBettorInfo *string   `json:"locationAddressOrBettorInfo,omitempty"`
}

type LocalCodePotInfo struct {
	IsActive bool              `json:"isActive,omitempty"`
	Current  *CurrentRoundInfo `json:"current,omitempty"`
	Winners  []WinnerByCode    `json:"winners,omitempty"`
}

type SuperWinInfo struct {
	DurationInMs int64   `json:"durationInMs,omitempty"`
	Reasoning    *string `json:"reasoning,omitempty"`
}

type HappyHourInfo struct {
	IsHappyHour       bool    `json:"isHappyHour,omitempty"`
	OddsModifier      float64 `json:"oddsModifier,omitempty"`
	RoundPoolBonusPct float64 `json:"roundPoolBonusPct,omitempty"`
}

type AccumulatorConfiguration struct {
	AccumulatorConfiguration
	Id        *string   `json:"id,omitempty"`
	UpdatedAt time.Time `json:"updatedAt,omitempty"`
}

type SyphonType int

const (
	SyphonTypeLocation SyphonType = 0
	SyphonTypeBettor   SyphonType = 1
)

type Syphon struct {
	Id               *string    `json:"id,omitempty"`
	Name             *string    `json:"name,omitempty"`
	Type             SyphonType `json:"type,omitempty"`
	NrOfCombinations int        `json:"nrOfCombinations,omitempty"`
}

type SyphonInfo struct {
	Bettors             map[string]Syphon `json:"bettors,omitempty"`
	Locations           map[string]Syphon `json:"locations,omitempty"`
	HasSyphons          bool              `json:"hasSyphons,omitempty"`
	TotalSyphonsInRound int               `json:"totalSyphonsInRound,omitempty"`
}

type DrawDiagnostics struct {
	Id                     *string                   `json:"id,omitempty"`
	InitializationInfo     *Initialization           `json:"initializationInfo,omitempty"`
	SequenceGenerationInfo *SequenceGeneration       `json:"sequenceGenerationInfo,omitempty"`
	BestFitFinderInfo      *BestFitFinder            `json:"bestFitFinderInfo,omitempty"`
	PurgerInfo             *Purger                   `json:"purgerInfo,omitempty"`
	Duration               int64                     `json:"duration,omitempty"`
	StimulationResponses   []StimulationResponse     `json:"stimulationResponses,omitempty"`
	LocalCodePot           *LocalCodePotInfo         `json:"localCodePot,omitempty"`
	SuperWin               *SuperWinInfo             `json:"superWin,omitempty"`
	HappyHour              *HappyHourInfo            `json:"happyHour,omitempty"`
	Reasoning              *string                   `json:"reasoning,omitempty"`
	Configuration          *AccumulatorConfiguration `json:"configuration,omitempty"`
	SyphonInfo             *SyphonInfo               `json:"syphonInfo,omitempty"`
}

type GetDrawDignostics struct {
	Id *string `json:"id,omitempty"`
}

type RecordDictionary[TKey any, TVal any] map[TKey]TVal

Go GetDrawDignostics DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

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.webhop.biz 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"id":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
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,"reasoning":"String"},"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"}],"blacklists":{"locations":[{"id":"String","val":"String"}],"players":[{"id":"String","val":"String"}]},"includeRoundPctAsBettorSyphonCriteria":false,"isActive":false}},"debugConfig":{"logLocationStats":false,"logBettorStats":false},"jP5WinnerCooldownPolicy":{"isActive":false,"cooldownIntervalInDays":0}},"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}}