Betting.WebApi

<back to all web services

FindBets

The following routes are available for this service:
All Verbs/qry/bets/search
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 FindBets 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 FindBets 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/bets/search 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,
			slipId: 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
				}
			},
			bettor: 
			{
				id: String,
				val: String
			},
			placedAt: 0001-01-01,
			productInstance: 
			{
				id: String,
				name: String,
				title: String,
				product: 
				{
					id: String,
					value: String,
					category: String,
					productProvider: 
					{
						id: String,
						val: String
					}
				}
			},
			status: 0,
			placementStatus: 0,
			processingStatus: 0,
			validity: 0,
			payoutStatus: 0,
			payload: 
			{
				String: String
			},
			outcome: 0,
			payinRecap: 
			{
				currency: String,
				payin: 0,
				payinTaxationPolicyRef: 
				{
					id: String,
					val: String
				},
				taxAmount: 0,
				stake: 0
			},
			possiblePayoutRecap: 
			{
				currency: String,
				winnings: 0,
				winningsTaxationPolicyRef: 
				{
					id: String,
					val: String
				},
				taxAmount: 0,
				payout: 0
			},
			actualPayoutRecap: 
			{
				currency: String,
				winnings: 0,
				winningsTaxationPolicyRef: 
				{
					id: String,
					val: String
				},
				taxAmount: 0,
				payout: 0
			},
			payoutInfo: 
			{
				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
					}
				},
				performedAt: 0001-01-01
			},
			cancellationInfo: 
			{
				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
					}
				},
				performedAt: 0001-01-01
			}
		}
	],
	currentPage: 0,
	pageSize: 0,
	totalItems: 0,
	totalPages: 0
}