Six4Win.WebApi

<back to all web services

GetDailyLocationStatsByHours

The following routes are available for this service:
All Verbs/qry/stats/daily-location-stats-by-hours
#![allow(
    dead_code,
    non_camel_case_types,
    non_snake_case,
    clippy::upper_case_acronyms
)]

use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::collections::HashMap;

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct QueryRequest {
    pub qry: RecordDictionary,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct PaginatedQueryRequest {
    #[serde(flatten)]
    pub query_request: QueryRequest,
    #[serde(rename = "currentPage")]
    pub current_page: i32,
    #[serde(rename = "pageSize")]
    pub page_size: i32,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct GetDailyLocationStatsByHours {
    #[serde(flatten)]
    pub paginated_query_request: PaginatedQueryRequest,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct RecordDictionary(pub HashMap<TKey, TVal>);

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct Bet {
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    #[serde(rename = "ordinalOfAvailableRoundToAssignTo")]
    pub ordinal_of_available_round_to_assign_to: i32,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub content: Option<String>,
    pub stake: f64,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub payload: Option<HashMap<String, String>>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct PaginatedResult<T> {
    pub data: Vec<Bet>,
    #[serde(rename = "currentPage")]
    pub current_page: i64,
    #[serde(rename = "pageSize")]
    pub page_size: i64,
    #[serde(rename = "totalItems")]
    pub total_items: i64,
    #[serde(rename = "totalPages")]
    pub total_pages: i64,
}

Rust GetDailyLocationStatsByHours 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/stats/daily-location-stats-by-hours HTTP/1.1 
Host: s4w1.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,
			locationId: String,
			locationName: String,
			date: 0001-01-01,
			data: 
			[
				{
					hour: 0,
					betCount: 0,
					stakeAmount: 0,
					winningsAmount: 0,
					balanceAmount: 0,
					rtp: 0
				}
			],
			total: 
			{
				hour: 0,
				betCount: 0,
				stakeAmount: 0,
				winningsAmount: 0,
				balanceAmount: 0,
				rtp: 0
			}
		}
	],
	currentPage: 0,
	pageSize: 0,
	totalItems: 0,
	totalPages: 0
}