#[non_exhaustive]pub struct IncidentCreateAttributes {
pub customer_impact_scope: Option<String>,
pub customer_impacted: bool,
pub fields: Option<BTreeMap<String, IncidentFieldAttributes>>,
pub incident_type_uuid: Option<String>,
pub initial_cells: Option<Vec<IncidentTimelineCellCreateAttributes>>,
pub is_test: Option<bool>,
pub notification_handles: Option<Vec<IncidentNotificationHandle>>,
pub title: String,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
The incident’s attributes for a create request.
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.customer_impact_scope: Option<String>
Required if customer_impacted:"true"
. A summary of the impact customers experienced during the incident.
customer_impacted: bool
A flag indicating whether the incident caused customer impact.
fields: Option<BTreeMap<String, IncidentFieldAttributes>>
A condensed view of the user-defined fields for which to create initial selections.
incident_type_uuid: Option<String>
A unique identifier that represents an incident type. The default incident type will be used if this property is not provided.
initial_cells: Option<Vec<IncidentTimelineCellCreateAttributes>>
An array of initial timeline cells to be placed at the beginning of the incident timeline.
is_test: Option<bool>
A flag indicating whether the incident is a test incident.
notification_handles: Option<Vec<IncidentNotificationHandle>>
Notification handles that will be notified of the incident at creation.
title: String
The title of the incident, which summarizes what happened.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl IncidentCreateAttributes
impl IncidentCreateAttributes
Sourcepub fn new(customer_impacted: bool, title: String) -> IncidentCreateAttributes
pub fn new(customer_impacted: bool, title: String) -> IncidentCreateAttributes
Examples found in repository?
examples/v2_incidents_CreateIncident.rs (line 23)
18async fn main() {
19 // there is a valid "user" in the system
20 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
21 let body = IncidentCreateRequest::new(
22 IncidentCreateData::new(
23 IncidentCreateAttributes::new(false, "Example-Incident".to_string()).fields(
24 BTreeMap::from([(
25 "state".to_string(),
26 IncidentFieldAttributes::IncidentFieldAttributesSingleValue(Box::new(
27 IncidentFieldAttributesSingleValue::new()
28 .type_(IncidentFieldAttributesSingleValueType::DROPDOWN)
29 .value(Some("resolved".to_string())),
30 )),
31 )]),
32 ),
33 IncidentType::INCIDENTS,
34 )
35 .relationships(IncidentCreateRelationships::new(Some(
36 NullableRelationshipToUser::new(Some(NullableRelationshipToUserData::new(
37 user_data_id.clone(),
38 UsersType::USERS,
39 ))),
40 ))),
41 );
42 let mut configuration = datadog::Configuration::new();
43 configuration.set_unstable_operation_enabled("v2.CreateIncident", true);
44 let api = IncidentsAPI::with_config(configuration);
45 let resp = api.create_incident(body).await;
46 if let Ok(value) = resp {
47 println!("{:#?}", value);
48 } else {
49 println!("{:#?}", resp.unwrap_err());
50 }
51}
pub fn customer_impact_scope(self, value: String) -> Self
Sourcepub fn fields(self, value: BTreeMap<String, IncidentFieldAttributes>) -> Self
pub fn fields(self, value: BTreeMap<String, IncidentFieldAttributes>) -> Self
Examples found in repository?
examples/v2_incidents_CreateIncident.rs (lines 23-32)
18async fn main() {
19 // there is a valid "user" in the system
20 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
21 let body = IncidentCreateRequest::new(
22 IncidentCreateData::new(
23 IncidentCreateAttributes::new(false, "Example-Incident".to_string()).fields(
24 BTreeMap::from([(
25 "state".to_string(),
26 IncidentFieldAttributes::IncidentFieldAttributesSingleValue(Box::new(
27 IncidentFieldAttributesSingleValue::new()
28 .type_(IncidentFieldAttributesSingleValueType::DROPDOWN)
29 .value(Some("resolved".to_string())),
30 )),
31 )]),
32 ),
33 IncidentType::INCIDENTS,
34 )
35 .relationships(IncidentCreateRelationships::new(Some(
36 NullableRelationshipToUser::new(Some(NullableRelationshipToUserData::new(
37 user_data_id.clone(),
38 UsersType::USERS,
39 ))),
40 ))),
41 );
42 let mut configuration = datadog::Configuration::new();
43 configuration.set_unstable_operation_enabled("v2.CreateIncident", true);
44 let api = IncidentsAPI::with_config(configuration);
45 let resp = api.create_incident(body).await;
46 if let Ok(value) = resp {
47 println!("{:#?}", value);
48 } else {
49 println!("{:#?}", resp.unwrap_err());
50 }
51}
pub fn incident_type_uuid(self, value: String) -> Self
pub fn initial_cells( self, value: Vec<IncidentTimelineCellCreateAttributes>, ) -> Self
pub fn is_test(self, value: bool) -> Self
pub fn notification_handles( self, value: Vec<IncidentNotificationHandle>, ) -> Self
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for IncidentCreateAttributes
impl Clone for IncidentCreateAttributes
Source§fn clone(&self) -> IncidentCreateAttributes
fn clone(&self) -> IncidentCreateAttributes
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 IncidentCreateAttributes
impl Debug for IncidentCreateAttributes
Source§impl<'de> Deserialize<'de> for IncidentCreateAttributes
impl<'de> Deserialize<'de> for IncidentCreateAttributes
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 IncidentCreateAttributes
impl PartialEq for IncidentCreateAttributes
Source§impl Serialize for IncidentCreateAttributes
impl Serialize for IncidentCreateAttributes
impl StructuralPartialEq for IncidentCreateAttributes
Auto Trait Implementations§
impl Freeze for IncidentCreateAttributes
impl RefUnwindSafe for IncidentCreateAttributes
impl Send for IncidentCreateAttributes
impl Sync for IncidentCreateAttributes
impl Unpin for IncidentCreateAttributes
impl UnwindSafe for IncidentCreateAttributes
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