Betting.WebApi

<back to all web services

GetBettorWallet

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


require 'json'
require 'servicestack'


class Money
    include ServiceStack::DTO

    # @return [BigDecimal]
    attr_accessor :amount
    # @return [String]
    attr_accessor :currency

    def self.properties
        {
            amount: { name: 'amount' },
            currency: { name: 'currency' },
        }
    end

end

class Wallet
    include ServiceStack::DTO

    # @return [Money]
    attr_accessor :balance

    def self.properties
        {
            balance: { name: 'balance', type: Money },
        }
    end

end

class GetBettorWallet
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :bettor_id
    # @return [String]
    attr_accessor :session_id
    # @return [String]
    attr_accessor :organization_id

    def self.properties
        {
            bettor_id: { name: 'bettorId' },
            session_id: { name: 'sessionId' },
            organization_id: { name: 'organizationId' },
        }
    end

    def response_type() = Wallet
    def get_type_name() = 'GetBettorWallet'
end

Ruby GetBettorWallet 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/wallet/bettor HTTP/1.1 
Host: api.bettor.webhop.biz 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"bettorId":"String","sessionId":"String","organizationId":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"balance":{"amount":0,"currency":"String"}}