Six4Win.WebApi

<back to all web services

FindBettorStats

The following routes are available for this service:
All Verbs/qry/bettor-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 FindBettorStats < PaginatedQueryRequest
    def response_type() = PaginatedResult
    def get_type_name() = 'FindBettorStats'
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 FindBettorStats DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /qry/bettor-stats HTTP/1.1 
Host: s4w2.api.bettor.webhop.biz 
Accept: application/json
Content-Type: application/json
Content-Length: length

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

{"data":[{"id":"String","username":"String","stake":0,"winnings":0,"pct":0,"currentDate":"0001-01-01T00:00:00.0000000Z","dailyStake":0,"dailyWinnings":0,"dailyRTP":0,"allTimeStake":0,"allTimeWinnings":0,"allTimeRTP":0}],"currentPage":0,"pageSize":0,"totalItems":0,"totalPages":0}