Betting.WebApi

<back to all web services

FindDailyCashbookTotals

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


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class QueryRequest:
    qry: Dict[str, str] = field(default_factory=dict)


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaginatedQueryRequest(QueryRequest):
    current_page: int = 0
    page_size: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DailyLocationCashbookTotalEx:
    id: Optional[str] = None
    organization: Optional[str] = None
    group: Optional[str] = None
    location: Optional[str] = None
    start: Decimal = decimal.Decimal(0)
    deposit: Decimal = decimal.Decimal(0)
    payin: Decimal = decimal.Decimal(0)
    total_in: Decimal = decimal.Decimal(0)
    payout: Decimal = decimal.Decimal(0)
    withdrawal: Decimal = decimal.Decimal(0)
    total_out: Decimal = decimal.Decimal(0)
    balance: Decimal = decimal.Decimal(0)


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


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ResponseMetrics:
    id: int = 0
    rqc: int = 0
    oc: int = 0
    sc: int = 0
    tc: int = 0
    adr: int = 0


T = TypeVar('T')


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaginatedResult(Generic[T], IPaginatedResult):
    data: List[ResponseMetrics] = field(default_factory=list)
    current_page: int = 0
    page_size: int = 0
    total_items: int = 0
    total_pages: int = 0


T = TypeVar('T')


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PaginatedResultWithTotal(Generic[T], PaginatedResult[DailyLocationCashbookTotalEx]):
    total: Decimal = decimal.Decimal(0)

Python FindDailyCashbookTotals 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/totals/cashbooks HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"currentPage":0,"pageSize":0,"qry":{"String":"String"}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"total":0,"data":[{"id":"String","organization":"String","group":"String","location":"String","start":0,"deposit":0,"payin":0,"totalIn":0,"payout":0,"withdrawal":0,"totalOut":0,"balance":0}],"currentPage":0,"pageSize":0,"totalItems":0,"totalPages":0}