Greyhounds.WebApi

<back to all web services

GetGameConfig

The following routes are available for this service:
All Verbs/config/game
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
Object = TypeVar('Object')


class RTPStrategies(IntEnum):
    RNG = 0
    DEFAULT = 1


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RoundConfiguration:
    countdown_duration_in_seconds: int = 0
    race_duration_in_seconds: int = 0
    results_duration_in_seconds: int = 0
    rtp_strategy: Optional[RTPStrategies] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GameConfiguration:
    id: Optional[str] = None
    queue_size: int = 0
    round_configuration: Optional[RoundConfiguration] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetGameConfig:
    pass

Python GetGameConfig DTOs

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

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /config/game HTTP/1.1 
Host: grh1.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","queueSize":0,"roundConfiguration":{"countdownDurationInSeconds":0,"raceDurationInSeconds":0,"resultsDurationInSeconds":0,"rtpStrategy":0}}