Betting.WebApi

<back to all web services

GetProductInstanceConfiguration

The following routes are available for this service:
All Verbs/qry/configurations/productInstances
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class GetProductInstanceConfiguration
{
    open var id:String? = null
    open var origin:Origin? = null
}

open class Origin
{
    open var application:BettingApp? = null
    open var ip:String? = null
    open var organization:RefEx? = null
    open var region:Ref? = null
    open var locationGroup:Ref? = null
    open var location:RefEx? = null
    open var device:RefEx? = null
    open var clerk:Ref? = null
}

open class BettingApp
{
    open var name:String? = null
    open var version:String? = null
}

open class RefEx : Ref()
{
    @SerializedName("data") open var Data:RecordDictionary<String, String>? = null
}

open class Ref
{
    open var id:String? = null
    @SerializedName("val") open var Val:String? = null
}

open class RecordDictionary<TKey, TVal> : HashMap<TKey,TVal>()
{
}

open class ProductInstanceConfiguration
{
    open var id:String? = null
    open var bettingPolicies:BettingPolicies? = null
    open var apiUrl:String? = null
    open var settings:HashMap<String,String>? = null
}

open class BettingPolicies
{
    open var payinConstraints:RecordList<PayinConstraint>? = null
    open var payinTaxationPolicyId:String? = null
    open var winningsCaps:RecordList<WinningsCap>? = null
    open var winningsTaxationPolicyId:String? = null
}

open class RecordList<T> : ArrayList<T>()
{
}

open class PayinConstraint
{
    @SerializedName("type") open var Type:PayinConstraintType? = null
    open var min:Money? = null
    @SerializedName("default") open var Default:Money? = null
    open var warningThreshold:Money? = null
    open var max:Money? = null
}

enum class PayinConstraintType(val value:Int)
{
    @SerializedName("0") SingleBet(0),
    @SerializedName("1") MultiBet(1),
    @SerializedName("2") SystemBet(2),
}

open class Money
{
    open var amount:BigDecimal? = null
    open var currency:String? = null
}

open class WinningsCap
{
    @SerializedName("type") open var Type:WinningsCapType? = null
    open var cap:Money? = null
}

enum class WinningsCapType(val value:Int)
{
    @SerializedName("0") SingleBet(0),
    @SerializedName("1") MultiBet(1),
    @SerializedName("2") SystemBet(2),
}

Kotlin GetProductInstanceConfiguration 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/configurations/productInstances HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	origin: 
	{
		application: 
		{
			name: String,
			version: String
		},
		ip: String,
		organization: 
		{
			data: 
			{
				String: String
			},
			id: String,
			val: String
		},
		region: 
		{
			id: String,
			val: String
		},
		locationGroup: 
		{
			id: String,
			val: String
		},
		location: 
		{
			data: 
			{
				String: String
			},
			id: String,
			val: String
		},
		device: 
		{
			data: 
			{
				String: String
			},
			id: String,
			val: String
		},
		clerk: 
		{
			id: String,
			val: String
		}
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	bettingPolicies: 
	{
		payinConstraints: 
		[
			{
				type: 0,
				min: 
				{
					amount: 0,
					currency: String
				},
				default: 
				{
					amount: 0,
					currency: String
				},
				warningThreshold: 
				{
					amount: 0,
					currency: String
				},
				max: 
				{
					amount: 0,
					currency: String
				}
			}
		],
		payinTaxationPolicyId: String,
		winningsCaps: 
		[
			{
				type: 0,
				cap: 
				{
					amount: 0,
					currency: String
				}
			}
		],
		winningsTaxationPolicyId: String
	},
	apiUrl: String,
	settings: 
	{
		String: String
	}
}