Betting.WebApi

<back to all web services

StoreE2EConfiguration

The following routes are available for this service:
POST/cmd/e2e/configuration
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


module ProductSubmitMode
    SINGLE = 0
    MULTI = 1
end

class Six4WinBetKindProbabilities
    include ServiceStack::DTO

    # @return [BigDecimal]
    attr_accessor :standard
    # @return [BigDecimal]
    attr_accessor :system7
    # @return [BigDecimal]
    attr_accessor :system8
    # @return [BigDecimal]
    attr_accessor :system9
    # @return [BigDecimal]
    attr_accessor :system10
    # @return [BigDecimal]
    attr_accessor :first_color1
    # @return [BigDecimal]
    attr_accessor :first_color2
    # @return [BigDecimal]
    attr_accessor :first_color3
    # @return [BigDecimal]
    attr_accessor :first_color4
    # @return [BigDecimal]
    attr_accessor :first_color5
    # @return [BigDecimal]
    attr_accessor :first_color6
    # @return [BigDecimal]
    attr_accessor :first_color7
    # @return [BigDecimal]
    attr_accessor :first_color8
    # @return [BigDecimal]
    attr_accessor :first_number_odd
    # @return [BigDecimal]
    attr_accessor :first_number_even
    # @return [BigDecimal]
    attr_accessor :first_number_less_than24_5
    # @return [BigDecimal]
    attr_accessor :first_number_greater_than24_5
    # @return [BigDecimal]
    attr_accessor :sum_of_first_five_less_than122_5
    # @return [BigDecimal]
    attr_accessor :sum_of_first_five_greater_than122_5
    # @return [BigDecimal]
    attr_accessor :more_odd_numbers
    # @return [BigDecimal]
    attr_accessor :more_even_numbers

    def self.properties
        {
            standard: { name: 'standard' },
            system7: { name: 'system7' },
            system8: { name: 'system8' },
            system9: { name: 'system9' },
            system10: { name: 'system10' },
            first_color1: { name: 'firstColor1' },
            first_color2: { name: 'firstColor2' },
            first_color3: { name: 'firstColor3' },
            first_color4: { name: 'firstColor4' },
            first_color5: { name: 'firstColor5' },
            first_color6: { name: 'firstColor6' },
            first_color7: { name: 'firstColor7' },
            first_color8: { name: 'firstColor8' },
            first_number_odd: { name: 'firstNumberOdd' },
            first_number_even: { name: 'firstNumberEven' },
            first_number_less_than24_5: { name: 'firstNumberLessThan24_5' },
            first_number_greater_than24_5: { name: 'firstNumberGreaterThan24_5' },
            sum_of_first_five_less_than122_5: { name: 'sumOfFirstFiveLessThan122_5' },
            sum_of_first_five_greater_than122_5: { name: 'sumOfFirstFiveGreaterThan122_5' },
            more_odd_numbers: { name: 'moreOddNumbers' },
            more_even_numbers: { name: 'moreEvenNumbers' },
        }
    end

end

class Interval
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :start
    # @return [Integer]
    attr_accessor :end

    def self.properties
        {
            start: { name: 'start' },
            end: { name: 'end' },
        }
    end

end

class ProductInstanceE2EConfiguration
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :product_instance_id
    # @return [Interval]
    attr_accessor :bets_per_slip

    def self.properties
        {
            product_instance_id: { name: 'productInstanceId' },
            bets_per_slip: { name: 'betsPerSlip', type: Interval },
        }
    end

end

class LocationE2EConfiguration
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :location_id
    # @return [TrueClass]
    attr_accessor :is_active
    # @return [ProductSubmitMode]
    attr_accessor :submit_mode
    # @return [List]
    attr_accessor :product_instance_e2_e_configurations

    def self.properties
        {
            location_id: { name: 'locationId' },
            is_active: { name: 'isActive' },
            submit_mode: { name: 'submitMode' },
            product_instance_e2_e_configurations: { name: 'productInstanceE2EConfigurations', type: [ProductInstanceE2EConfiguration] },
        }
    end

end

class StoreE2EConfiguration
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :delay_time
    # @return [Integer]
    attr_accessor :number_of_slips_per_location
    # @return [ProductSubmitMode]
    attr_accessor :default_submit_mode
    # @return [Six4WinBetKindProbabilities]
    attr_accessor :six4_win_bet_kind_probabilities
    # @return [List]
    attr_accessor :default_product_instance_e2_e_configurations
    # @return [List]
    attr_accessor :location_e2_e_configurations

    def self.properties
        {
            delay_time: { name: 'delayTime' },
            number_of_slips_per_location: { name: 'numberOfSlipsPerLocation' },
            default_submit_mode: { name: 'defaultSubmitMode' },
            six4_win_bet_kind_probabilities: { name: 'six4WinBetKindProbabilities', type: Six4WinBetKindProbabilities },
            default_product_instance_e2_e_configurations: { name: 'defaultProductInstanceE2EConfigurations', type: [ProductInstanceE2EConfiguration] },
            location_e2_e_configurations: { name: 'locationE2EConfigurations', type: [LocationE2EConfiguration] },
        }
    end

    def response_type() = ServiceStack::ResponseStatus
    def get_type_name() = 'StoreE2EConfiguration'
end

Ruby StoreE2EConfiguration 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 /cmd/e2e/configuration HTTP/1.1 
Host: api.bettor.webhop.biz 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"delayTime":0,"numberOfSlipsPerLocation":0,"defaultSubmitMode":0,"six4WinBetKindProbabilities":{"standard":0,"system7":0,"system8":0,"system9":0,"system10":0,"firstColor1":0,"firstColor2":0,"firstColor3":0,"firstColor4":0,"firstColor5":0,"firstColor6":0,"firstColor7":0,"firstColor8":0,"firstNumberOdd":0,"firstNumberEven":0,"firstNumberLessThan24_5":0,"firstNumberGreaterThan24_5":0,"sumOfFirstFiveLessThan122_5":0,"sumOfFirstFiveGreaterThan122_5":0,"moreOddNumbers":0,"moreEvenNumbers":0},"defaultProductInstanceE2EConfigurations":[{"productInstanceId":"String","betsPerSlip":{"start":0,"end":0}}],"locationE2EConfigurations":[{"locationId":"String","isActive":false,"submitMode":0,"productInstanceE2EConfigurations":[{"productInstanceId":"String","betsPerSlip":{"start":0,"end":0}}]}]}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}