Betting.WebApi

<back to all web services

FindLocations

Requires Authentication
The following routes are available for this service:
All Verbs/qry/locations
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 FindLocations 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 FindLocations 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/locations 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,
			organization: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			region: 
			{
				id: String,
				val: String
			},
			group: 
			{
				id: String,
				val: String
			},
			address: 
			{
				street: String,
				city: String,
				state: String,
				postalCode: String,
				country: 
				{
					id: String,
					val: String
				},
				gps: 
				{
					lat: 0,
					lng: 0
				},
				data: 
				{
					String: String
				}
			},
			locale: 
			{
				timeZone: 
				{
					id: String,
					val: String
				},
				currency: 
				{
					id: String,
					val: String
				},
				language: 
				{
					id: String,
					val: String
				}
			},
			devices: 
			[
				{
					id: String,
					name: String,
					isActive: False,
					isRetired: False,
					operationalStatus: 2,
					type: 0,
					integrationsData: 
					{
						String: String
					},
					profile: 
					{
						usageMode: 0,
						userInterface: 0,
						wallet: 
						{
							id: String,
							val: String
						},
						managedBy: 0
					}
				}
			],
			productInstances: 
			[
				{
					id: String,
					name: String,
					title: String,
					product: 
					{
						id: String,
						value: String,
						category: String,
						productProvider: 
						{
							id: String,
							val: String
						}
					}
				}
			],
			integrationsData: 
			{
				String: String
			}
		}
	],
	currentPage: 0,
	pageSize: 0,
	totalItems: 0,
	totalPages: 0
}