Skip to main content

lichess_api/model/bulk_pairings/
create.rs

1use crate::model::{Body, Days, Request, VariantKey};
2use serde::Serialize;
3use serde_with::skip_serializing_none;
4
5#[skip_serializing_none]
6#[derive(Default, Clone, Debug, Serialize)]
7pub struct CreateBulkPairingForm {
8    pub players: String,
9    #[serde(rename = "clock.limit")]
10    pub clock_limit: Option<u32>,
11    #[serde(rename = "clock.increment")]
12    pub clock_increment: Option<u32>,
13    pub days: Option<Days>,
14    #[serde(rename = "pairAt")]
15    pub pair_at: Option<i64>,
16    #[serde(rename = "startClocksAt")]
17    pub start_clocks_at: Option<i64>,
18    pub rated: Option<bool>,
19    pub variant: Option<VariantKey>,
20    pub fen: Option<String>,
21    pub message: Option<String>,
22    pub rules: Option<String>,
23}
24
25#[derive(Default, Clone, Debug, Serialize)]
26pub struct PostQuery;
27
28pub type PostRequest = Request<PostQuery, CreateBulkPairingForm>;
29
30impl PostRequest {
31    pub fn new(form: CreateBulkPairingForm) -> Self {
32        Self::post("/api/bulk-pairing", None, Body::Form(form), None)
33    }
34}