#[non_exhaustive]pub struct ScheduleCreateRequest {
pub data: ScheduleCreateRequestData,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
The top-level request body for schedule creation, wrapping a data
object.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.data: ScheduleCreateRequestData
The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl ScheduleCreateRequest
impl ScheduleCreateRequest
Sourcepub fn new(data: ScheduleCreateRequestData) -> ScheduleCreateRequest
pub fn new(data: ScheduleCreateRequestData) -> ScheduleCreateRequest
Examples found in repository?
examples/v2_on-call_CreateOnCallSchedule.rs (lines 28-68)
22async fn main() {
23 // there is a valid "user" in the system
24 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
25
26 // there is a valid "dd_team" in the system
27 let dd_team_data_id = std::env::var("DD_TEAM_DATA_ID").unwrap();
28 let body = ScheduleCreateRequest::new(
29 ScheduleCreateRequestData::new(
30 ScheduleCreateRequestDataAttributes::new(
31 vec![ScheduleCreateRequestDataAttributesLayersItems::new(
32 DateTime::parse_from_rfc3339("2021-11-01T11:11:11+00:00")
33 .expect("Failed to parse datetime")
34 .with_timezone(&Utc),
35 LayerAttributesInterval::new().days(1),
36 vec![
37 ScheduleRequestDataAttributesLayersItemsMembersItems::new().user(
38 ScheduleRequestDataAttributesLayersItemsMembersItemsUser::new()
39 .id(user_data_id.clone()),
40 ),
41 ],
42 "Layer 1".to_string(),
43 DateTime::parse_from_rfc3339("2021-11-06T11:11:11+00:00")
44 .expect("Failed to parse datetime")
45 .with_timezone(&Utc),
46 )
47 .end_date(
48 DateTime::parse_from_rfc3339("2021-11-21T11:11:11+00:00")
49 .expect("Failed to parse datetime")
50 .with_timezone(&Utc),
51 )
52 .restrictions(vec![TimeRestriction::new()
53 .end_day(Weekday::FRIDAY)
54 .end_time("17:00:00".to_string())
55 .start_day(Weekday::MONDAY)
56 .start_time("09:00:00".to_string())])],
57 "Example-On-Call".to_string(),
58 "America/New_York".to_string(),
59 ),
60 ScheduleCreateRequestDataType::SCHEDULES,
61 )
62 .relationships(ScheduleCreateRequestDataRelationships::new().teams(
63 DataRelationshipsTeams::new().data(vec![DataRelationshipsTeamsDataItems::new(
64 dd_team_data_id.clone(),
65 DataRelationshipsTeamsDataItemsType::TEAMS,
66 )]),
67 )),
68 );
69 let configuration = datadog::Configuration::new();
70 let api = OnCallAPI::with_config(configuration);
71 let resp = api
72 .create_on_call_schedule(body, CreateOnCallScheduleOptionalParams::default())
73 .await;
74 if let Ok(value) = resp {
75 println!("{:#?}", value);
76 } else {
77 println!("{:#?}", resp.unwrap_err());
78 }
79}
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for ScheduleCreateRequest
impl Clone for ScheduleCreateRequest
Source§fn clone(&self) -> ScheduleCreateRequest
fn clone(&self) -> ScheduleCreateRequest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ScheduleCreateRequest
impl Debug for ScheduleCreateRequest
Source§impl<'de> Deserialize<'de> for ScheduleCreateRequest
impl<'de> Deserialize<'de> for ScheduleCreateRequest
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ScheduleCreateRequest
impl PartialEq for ScheduleCreateRequest
Source§impl Serialize for ScheduleCreateRequest
impl Serialize for ScheduleCreateRequest
impl StructuralPartialEq for ScheduleCreateRequest
Auto Trait Implementations§
impl Freeze for ScheduleCreateRequest
impl RefUnwindSafe for ScheduleCreateRequest
impl Send for ScheduleCreateRequest
impl Sync for ScheduleCreateRequest
impl Unpin for ScheduleCreateRequest
impl UnwindSafe for ScheduleCreateRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more