Betting.WebApi

<back to all web services

FindTotals

The following routes are available for this service:
All Verbs/qry/totals
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


class QueryRequest
    include ServiceStack::DTO

    # @return [RecordDictionary]
    attr_accessor :qry

    def self.properties
        {
            qry: { name: 'qry', type: RecordDictionary },
        }
    end

end

class PaginatedQueryRequest < QueryRequest
    # @return [Integer]
    attr_accessor :current_page
    # @return [Integer]
    attr_accessor :page_size

    def self.properties
        {
            current_page: { name: 'currentPage' },
            page_size: { name: 'pageSize' },
        }
    end

end

class FindTotals < PaginatedQueryRequest
    def response_type() = PaginatedResult
    def get_type_name() = 'FindTotals'
end

class RecordDictionary < Hash
end

class ResponseMetrics
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :id
    # @return [Integer]
    attr_accessor :rqc
    # @return [Integer]
    attr_accessor :oc
    # @return [Integer]
    attr_accessor :sc
    # @return [Integer]
    attr_accessor :tc
    # @return [Integer]
    attr_accessor :adr

    def self.properties
        {
            id: { name: 'id' },
            rqc: { name: 'rqc' },
            oc: { name: 'oc' },
            sc: { name: 'sc' },
            tc: { name: 'tc' },
            adr: { name: 'adr' },
        }
    end

end

class PaginatedResult
    include ServiceStack::DTO

    # @return [List]
    attr_accessor :data
    # @return [Integer]
    attr_accessor :current_page
    # @return [Integer]
    attr_accessor :page_size
    # @return [Integer]
    attr_accessor :total_items
    # @return [Integer]
    attr_accessor :total_pages

    def self.properties
        {
            data: { name: 'data', type: [ResponseMetrics] },
            current_page: { name: 'currentPage' },
            page_size: { name: 'pageSize' },
            total_items: { name: 'totalItems' },
            total_pages: { name: 'totalPages' },
        }
    end

end

Ruby FindTotals 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/totals HTTP/1.1 
Host: api.bettor.webhop.biz 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<FindTotals xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Betting.WebApi.ServiceModel">
  <Qry xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="http://schemas.datacontract.org/2004/07/Starnet.Common">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Qry>
  <CurrentPage xmlns="http://schemas.datacontract.org/2004/07/Starnet.Common">0</CurrentPage>
  <PageSize xmlns="http://schemas.datacontract.org/2004/07/Starnet.Common">0</PageSize>
</FindTotals>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<PaginatedResultOfTotaloZK75C2H xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Starnet.Common">
  <CurrentPage>0</CurrentPage>
  <Data xmlns:d2p1="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Reporting.ReadModels">
    <d2p1:Total>
      <BalanceSummary xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <PaidOut>
          <Balance>0</Balance>
          <ProfitPct>0</ProfitPct>
        </PaidOut>
        <Realized>
          <Balance>0</Balance>
          <ProfitPct>0</ProfitPct>
        </Realized>
      </BalanceSummary>
      <CancelationInfo xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <Amount>0</Amount>
        <Count>0</Count>
      </CancelationInfo>
      <PayinInfo xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <BetCount>0</BetCount>
        <Payin>0</Payin>
        <Stake>0</Stake>
        <Tax>0</Tax>
      </PayinInfo>
      <PayoutSummary xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <Expired>
          <BetCount>0</BetCount>
          <Payout>0</Payout>
          <Tax>0</Tax>
          <Winnings>0</Winnings>
        </Expired>
        <PaidOut>
          <BetCount>0</BetCount>
          <Payout>0</Payout>
          <Tax>0</Tax>
          <Winnings>0</Winnings>
        </PaidOut>
        <Pending>
          <BetCount>0</BetCount>
          <Payout>0</Payout>
          <Tax>0</Tax>
          <Winnings>0</Winnings>
        </Pending>
        <Realized>
          <BetCount>0</BetCount>
          <Payout>0</Payout>
          <Tax>0</Tax>
          <Winnings>0</Winnings>
        </Realized>
      </PayoutSummary>
      <ReversionInfo xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <Amount>0</Amount>
        <Count>0</Count>
      </ReversionInfo>
      <VoidInfo xmlns="http://schemas.datacontract.org/2004/07/Betting.ReadModel.Totals">
        <Amount>0</Amount>
        <Count>0</Count>
      </VoidInfo>
      <d2p1:Id>String</d2p1:Id>
      <d2p1:Name>String</d2p1:Name>
    </d2p1:Total>
  </Data>
  <PageSize>0</PageSize>
  <TotalItems>0</TotalItems>
  <TotalPages>0</TotalPages>
</PaginatedResultOfTotaloZK75C2H>