| All Verbs | /qry/feed |
|---|
const std = @import("std");
pub const RoundStatus = enum(i32) {
Pending = 0,
InProgress = 1,
Ended = 2,
};
pub const CountdownConfiguration = struct {
lockdownStepFromEnd: i32 = 0,
assertLockdownStepFromEnd: i32 = 0,
};
pub const DrawConfiguration = struct {
introIntervalInMs: i32 = 0,
animationIntervalInMs: i32 = 0,
outroIntervalInMs: i32 = 0,
};
pub const RTPStrategies = enum(i32) {
RNG = 0,
Accumulator = 1,
};
pub const HappyHourConfiguration = struct {
isHappyHour: bool = false,
oddsModifier: f64 = 0,
roundPoolBonusPct: f64 = 0,
useOnlyRoundPoolWithNoOptimizations: bool = false,
overrideSyphonCombinationCountPerRoundThreshold: bool = false,
syphonCombinationCountPerRoundThresholdPctOverride: f64 = 0,
};
pub const RoundConfiguration = struct {
coefficients: ?RecordList = null,
isDoubleTripleActive: bool = false,
isJackpot5Active: bool = false,
countdownDurationInSeconds: i32 = 0,
countdownConfiguration: ?CountdownConfiguration = null,
drawConfiguration: ?DrawConfiguration = null,
resultsDurationInSeconds: i32 = 0,
rtpStrategy: ?RTPStrategies = null,
happyHourConfiguration: ?HappyHourConfiguration = null,
};
pub const BettingApp = struct {
name: ?[]const u8 = null,
version: ?[]const u8 = null,
};
pub const Ref = struct {
id: ?[]const u8 = null,
val: ?[]const u8 = null,
};
pub const RefEx = struct {
id: ?[]const u8 = null,
val: ?[]const u8 = null,
data: ?RecordDictionary = null,
};
pub const Origin = struct {
application: ?BettingApp = null,
ip: ?[]const u8 = null,
organization: ?RefEx = null,
region: ?Ref = null,
locationGroup: ?Ref = null,
location: ?RefEx = null,
device: ?RefEx = null,
clerk: ?Ref = null,
};
pub const JackPot5Winner = struct {
betId: ?[]const u8 = null,
nrOfCombinations: i32 = 0,
winningsAmount: f64 = 0,
origin: ?Origin = null,
bettor: ?Ref = null,
payload: ?std.json.Value = null,
};
pub const Jackpot5Info = struct {
isHit: bool = false,
amountAccumulated: f64 = 0,
amountAwarded: f64 = 0,
nrOfWinners: i32 = 0,
jackPot5Winners: ?[]JackPot5Winner = null,
};
pub const SuperWinWinner = struct {
isDrawn: bool = false,
drawnAtUtc: ?[]const u8 = null,
roundId: ?[]const u8 = null,
betId: ?[]const u8 = null,
slipId: ?[]const u8 = null,
origin: ?Origin = null,
bettor: ?Ref = null,
code: ?[]const u8 = null,
amount: f64 = 0,
locationAddressOrBettorInfo: ?[]const u8 = null,
};
pub const SuperWinInfo = struct {
isActive: bool = false,
winner: ?SuperWinWinner = null,
availableAmount: f64 = 0,
allPrizesAwarded: bool = false,
};
pub const WinnerByCode = struct {
roundId: ?[]const u8 = null,
drawnAtUtc: ?[]const u8 = null,
slipId: ?[]const u8 = null,
betId: ?[]const u8 = null,
code: ?[]const u8 = null,
amount: f64 = 0,
origin: ?Origin = null,
bettor: ?Ref = null,
locationAddressOrBettorInfo: ?[]const u8 = null,
};
pub const GlobalCodePotInfo = struct {
isActive: bool = false,
isDrawn: bool = false,
winner: ?WinnerByCode = null,
inertCode: ?[]const u8 = null,
accumulation: f64 = 0,
};
pub const Stages = enum(i32) {
None = 0,
Countdown = 1,
Processing = 2,
Draw = 3,
Results = 4,
};
pub const RoundProgress = struct {
stage: ?Stages = null,
step: i32 = 0,
steps: i32 = 0,
utcTimestamp: ?[]const u8 = null,
};
pub const Round = struct {
id: ?[]const u8 = null,
createdAt: ?[]const u8 = null,
updatedAt: ?[]const u8 = null,
shouldStartAtUtc: ?[]const u8 = null,
startedAtUtc: ?[]const u8 = null,
status: ?RoundStatus = null,
configuration: ?RoundConfiguration = null,
sequence: ?[]const u8 = null,
jackpot5Info: ?Jackpot5Info = null,
superWinInfo: ?SuperWinInfo = null,
globalCodePotInfo: ?GlobalCodePotInfo = null,
progress: ?RoundProgress = null,
isLocked: bool = false,
isCalculated: bool = false,
};
pub const Feed = struct {
id: ?[]const u8 = null,
round: ?Round = null,
lastJackpot5Info: ?Jackpot5Info = null,
superWinInfo: ?SuperWinInfo = null,
globalCodePotInfo: ?GlobalCodePotInfo = null,
};
pub const GetFeed = struct {};
pub fn RecordList(comptime T: type) type {
_ = T;
return struct {
pub const ss_collection = "items";
items: []T = &.{},
};
pub fn RecordDictionary(comptime TKey: type, comptime TVal: type) type {
_ = TKey;
_ = TVal;
return struct {};
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /qry/feed HTTP/1.1
Host: s4w2.api.bettor.webhop.biz
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"id":"String","round":{"id":"String","createdAt":"0001-01-01T00:00:00.0000000Z","updatedAt":"0001-01-01T00:00:00.0000000Z","shouldStartAtUtc":"0001-01-01T00:00:00.0000000Z","startedAtUtc":"0001-01-01T00:00:00.0000000Z","status":0,"configuration":{"coefficients":[0],"isDoubleTripleActive":false,"isJackpot5Active":false,"countdownDurationInSeconds":0,"countdownConfiguration":{"lockdownStepFromEnd":0,"assertLockdownStepFromEnd":0},"drawConfiguration":{"introIntervalInMs":0,"animationIntervalInMs":0,"outroIntervalInMs":0},"resultsDurationInSeconds":0,"rtpStrategy":0,"happyHourConfiguration":{"isHappyHour":false,"oddsModifier":0,"roundPoolBonusPct":0,"useOnlyRoundPoolWithNoOptimizations":false,"overrideSyphonCombinationCountPerRoundThreshold":false,"syphonCombinationCountPerRoundThresholdPctOverride":0}},"sequence":"String","jackpot5Info":{"isHit":false,"amountAccumulated":0,"amountAwarded":0,"nrOfWinners":0,"jackPot5Winners":[{"betId":"String","nrOfCombinations":0,"winningsAmount":0,"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"},"payload":{"String":"String"}}]},"superWinInfo":{"isActive":false,"winner":{"isDrawn":false,"drawnAtUtc":"0001-01-01T00:00:00.0000000Z","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"},"availableAmount":0,"allPrizesAwarded":false},"globalCodePotInfo":{"isActive":false,"isDrawn":true,"winner":{"roundId":"String","drawnAtUtc":"0001-01-01T00:00:00.0000000Z","slipId":"String","betId":"String","code":"String","amount":0,"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"},"locationAddressOrBettorInfo":"String"},"inertCode":"String","accumulation":0},"progress":{"stage":0,"step":0,"steps":0,"utcTimestamp":"0001-01-01T00:00:00.0000000Z"},"isLocked":false,"isCalculated":false},"lastJackpot5Info":{"isHit":false,"amountAccumulated":0,"amountAwarded":0,"nrOfWinners":0,"jackPot5Winners":[{"betId":"String","nrOfCombinations":0,"winningsAmount":0,"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"},"payload":{"String":"String"}}]},"superWinInfo":{"isActive":false,"winner":{"isDrawn":false,"drawnAtUtc":"0001-01-01T00:00:00.0000000Z","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"},"availableAmount":0,"allPrizesAwarded":false},"globalCodePotInfo":{"isActive":false,"isDrawn":true,"winner":{"roundId":"String","drawnAtUtc":"0001-01-01T00:00:00.0000000Z","slipId":"String","betId":"String","code":"String","amount":0,"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"},"locationAddressOrBettorInfo":"String"},"inertCode":"String","accumulation":0}}