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 .jsv suffix or ?format=jsv

HTTP + JSV

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/jsv
Content-Type: text/jsv
Content-Length: length

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

{
	data: 
	[
		{
			id: 0,
			date: 0001-01-01,
			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
}