Betting.WebApi

<back to all web services

FindTotals

The following routes are available for this service:
All Verbs/qry/totals
package dtos

type QueryRequest struct {
	Qry RecordDictionary[string, string] `json:"qry"`
}

type PaginatedQueryRequest struct {
	QueryRequest
	CurrentPage int `json:"currentPage,omitempty"`
	PageSize    int `json:"pageSize,omitempty"`
}

type FindTotals struct {
	PaginatedQueryRequest
}

type RecordDictionary[TKey any, TVal any] map[TKey]TVal

type ResponseMetrics struct {
	Id  int64 `json:"id,omitempty"`
	Rqc int   `json:"rqc,omitempty"`
	Oc  int   `json:"oc,omitempty"`
	Sc  int   `json:"sc,omitempty"`
	Tc  int   `json:"tc,omitempty"`
	Adr int   `json:"adr,omitempty"`
}

type PaginatedResult[T any] struct {
	Data        []ResponseMetrics `json:"data"`
	CurrentPage int64             `json:"currentPage,omitempty"`
	PageSize    int64             `json:"pageSize,omitempty"`
	TotalItems  int64             `json:"totalItems,omitempty"`
	TotalPages  int64             `json:"totalPages,omitempty"`
}

Go FindTotals 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/totals HTTP/1.1 
Host: 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: String,
			name: String,
			cancelationInfo: 
			{
				count: 0,
				amount: 0
			},
			reversionInfo: 
			{
				count: 0,
				amount: 0
			},
			voidInfo: 
			{
				count: 0,
				amount: 0
			},
			payinInfo: 
			{
				betCount: 0,
				payin: 0,
				tax: 0,
				stake: 0
			},
			payoutSummary: 
			{
				realized: 
				{
					betCount: 0,
					winnings: 0,
					tax: 0,
					payout: 0
				},
				paidOut: 
				{
					betCount: 0,
					winnings: 0,
					tax: 0,
					payout: 0
				},
				expired: 
				{
					betCount: 0,
					winnings: 0,
					tax: 0,
					payout: 0
				},
				pending: 
				{
					betCount: 0,
					winnings: 0,
					tax: 0,
					payout: 0
				}
			},
			balanceSummary: 
			{
				realized: 
				{
					balance: 0,
					profitPct: 0
				},
				paidOut: 
				{
					balance: 0,
					profitPct: 0
				}
			}
		}
	],
	currentPage: 0,
	pageSize: 0,
	totalItems: 0,
	totalPages: 0
}