Six4Win.WebApi

<back to all web services

GetLocalCodePotAccumulations

The following routes are available for this service:
All Verbs/qry/lcp/accumulations
#![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 ThresholdInterval {
    pub start: f64,
    pub end: f64,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct LCPConfiguration {
    #[serde(rename = "isActive")]
    pub is_active: bool,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub interval: Option<ThresholdInterval>,
    pub pct: f64,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct BettingApp {
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub version: Option<String>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct Ref {
    pub id: String,
    pub val: String,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct RefEx {
    #[serde(flatten)]
    pub r#ref: Ref,
    pub data: RecordDictionary,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct Origin {
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub application: Option<BettingApp>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub ip: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub organization: Option<RefEx>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub region: Option<Ref>,
    #[serde(rename = "locationGroup")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub location_group: Option<Ref>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub location: Option<RefEx>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub device: Option<RefEx>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub clerk: Option<Ref>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct WinnerByCode {
    #[serde(rename = "roundId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub round_id: Option<String>,
    #[serde(rename = "drawnAtUtc")]
    pub drawn_at_utc: String,
    #[serde(rename = "slipId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub slip_id: Option<String>,
    #[serde(rename = "betId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub bet_id: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub code: Option<String>,
    pub amount: f64,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub origin: Option<Origin>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub bettor: Option<Ref>,
    #[serde(rename = "locationAddressOrBettorInfo")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub location_address_or_bettor_info: Option<String>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct LCPAccumulation {
    #[serde(rename = "locId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub loc_id: Option<String>,
    #[serde(rename = "locName")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub loc_name: Option<String>,
    pub amount: f64,
    pub threshold: f64,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub cfg: Option<LCPConfiguration>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub winners: Option<Vec<WinnerByCode>>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct LocalCodePotAccumulations {
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub accumulations: Option<HashMap<String, LCPAccumulation>>,
    #[serde(rename = "currentRoundId")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub current_round_id: Option<String>,
    #[serde(rename = "inertCode")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub inert_code: Option<String>,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Default)]
#[serde(default)]
pub struct GetLocalCodePotAccumulations {}

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

Rust GetLocalCodePotAccumulations DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /qry/lcp/accumulations HTTP/1.1 
Host: s4w2.api.bettor.webhop.biz 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<GetLocalCodePotAccumulations xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.WebApi.ServiceModel" />
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<LocalCodePotAccumulations xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Six4Win.ReadModel">
  <Accumulations xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringLCPAccumulationQC5r2uXE>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value xmlns:d4p1="http://schemas.datacontract.org/2004/07/Six4Win">
        <d4p1:Amount>0</d4p1:Amount>
        <d4p1:Cfg>
          <d4p1:Interval>
            <d4p1:End>0</d4p1:End>
            <d4p1:Start>0</d4p1:Start>
          </d4p1:Interval>
          <d4p1:IsActive>false</d4p1:IsActive>
          <d4p1:Pct>0</d4p1:Pct>
        </d4p1:Cfg>
        <d4p1:LocId>String</d4p1:LocId>
        <d4p1:LocName>String</d4p1:LocName>
        <d4p1:Threshold>0</d4p1:Threshold>
        <d4p1:Winners xmlns:d5p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic">
          <d5p1:_array />
          <d5p1:_head>0</d5p1:_head>
          <d5p1:_size>0</d5p1:_size>
          <d5p1:_tail>0</d5p1:_tail>
          <d5p1:_version>0</d5p1:_version>
        </d4p1:Winners>
      </d2p1:Value>
    </d2p1:KeyValueOfstringLCPAccumulationQC5r2uXE>
  </Accumulations>
  <CurrentRoundId>String</CurrentRoundId>
  <Id>String</Id>
  <InertCode>String</InertCode>
</LocalCodePotAccumulations>