Six4Win.WebApi

<back to all web services

FindWinStats

The following routes are available for this service:
All Verbs/qry/win-stats
# 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 FindWinStats < PaginatedQueryRequest
    def response_type() = PaginatedResult
    def get_type_name() = 'FindWinStats'
end

class RecordDictionary < Hash
end

class Bet
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :id
    # @return [Integer]
    attr_accessor :ordinal_of_available_round_to_assign_to
    # @return [String]
    attr_accessor :content
    # @return [BigDecimal]
    attr_accessor :stake
    # @return [Dictionary]
    attr_accessor :payload

    def self.properties
        {
            id: { name: 'id' },
            ordinal_of_available_round_to_assign_to: { name: 'ordinalOfAvailableRoundToAssignTo' },
            content: { name: 'content' },
            stake: { name: 'stake' },
            payload: { name: 'payload' },
        }
    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: [Bet] },
            current_page: { name: 'currentPage' },
            page_size: { name: 'pageSize' },
            total_items: { name: 'totalItems' },
            total_pages: { name: 'totalPages' },
        }
    end

end

Ruby FindWinStats 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 /qry/win-stats HTTP/1.1 
Host: s4w1.api.bettor.webhop.biz 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

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

{"data":[{"id":0,"date":"0001-01-01T00:00:00.0000000Z","hour":0,"c10000":0,"a10000":0,"c7500":0,"a7500":0,"c5000":0,"a5000":0,"c2500":0,"a2500":0,"c1000":0,"a1000":0,"c500":0,"a500":0,"c300":0,"a300":0,"c200":0,"a200":0,"c150":0,"a150":0,"c100":0,"a100":0,"c90":0,"a90":0,"c80":0,"a80":0,"c70":0,"a70":0,"c60":0,"a60":0,"c50":0,"a50":0,"c40":0,"a40":0,"c30":0,"a30":0,"c25":0,"a25":0,"c20":0,"a20":0,"c15":0,"a15":0,"c10":0,"a10":0,"c9":0,"a9":0,"c8":0,"a8":0,"c7":0,"a7":0,"c6":0,"a6":0,"c5":0,"a5":0,"c4":0,"a4":0,"c3":0,"a3":0,"c2":0,"a2":0,"c1":0,"a1":0,"cC4":0,"aC4":0,"cC5":0,"aC5":0,"cC6":0,"aC6":0,"cC7":0,"aC7":0,"cC8":0,"aC8":0,"cC9":0,"aC9":0,"cC10":0,"aC10":0,"cC11":0,"aC11":0,"cC12":0,"aC12":0,"cC13":0,"aC13":0,"cC14":0,"aC14":0,"cC15":0,"aC15":0,"cC16":0,"aC16":0,"cC17":0,"aC17":0,"cC18":0,"aC18":0,"cC19":0,"aC19":0,"cjP5":0,"ajP5":0,"clcp":0,"alcp":0,"cgcp":0,"agcp":0,"csWin":0,"asWin":0}],"currentPage":0,"pageSize":0,"totalItems":0,"totalPages":0}