Six4Win.WebApi

<back to all web services

GetFeedHeartbeat

The following routes are available for this service:
All Verbs/qry/feed/hb
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


class Stages(IntEnum):
    NONE = 0
    COUNTDOWN = 1
    PROCESSING = 2
    DRAW = 3
    RESULTS = 4


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Progress:
    step: int = 0
    steps: int = 0
    pct: float = 0.0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class FeedHeartbeat:
    round_id: Optional[str] = None
    stage: Optional[Stages] = None
    step: int = 0
    steps: int = 0
    utc_timestamp: datetime.datetime = datetime.datetime(1, 1, 1)
    lockdown_step_from_end: int = 0
    overall: Optional[Progress] = None
    is_happy_hour: bool = False


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

Python GetFeedHeartbeat DTOs

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

HTTP + XML

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

POST /qry/feed/hb HTTP/1.1 
Host: s4w2.api.bettor.cc 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<GetFeedHeartbeat xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.WebApi.ServiceModel" />
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<FeedHeartbeat xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.ReadModel">
  <IsHappyHour>false</IsHappyHour>
  <LockdownStepFromEnd>0</LockdownStepFromEnd>
  <Overall>
    <Pct>0</Pct>
    <Step>0</Step>
    <Steps>0</Steps>
  </Overall>
  <RoundId>String</RoundId>
  <Stage>None</Stage>
  <Step>0</Step>
  <Steps>0</Steps>
  <UTCTimestamp>0001-01-01T00:00:00</UTCTimestamp>
</FeedHeartbeat>