pipedrive-rs 0.1.0

Rust PipedriveClient
Documentation
/*
 * Pipedrive API v1
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 1.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */




#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct MailMessageItemForList {
    /// ID of the mail message.
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<i32>,
    /// The array of mail message sender (object)
    #[serde(rename = "from", skip_serializing_if = "Option::is_none")]
    pub from: Option<Vec<crate::models::MailMessageItemForListAllOfFromInner>>,
    /// The array of mail message receiver (object)
    #[serde(rename = "to", skip_serializing_if = "Option::is_none")]
    pub to: Option<Vec<crate::models::MailMessageItemForListAllOfFromInner>>,
    /// The array of mail message copies (object)
    #[serde(rename = "cc", skip_serializing_if = "Option::is_none")]
    pub cc: Option<Vec<crate::models::MailMessageItemForListAllOfFromInner>>,
    /// The array of mail message blind copies (object)
    #[serde(rename = "bcc", skip_serializing_if = "Option::is_none")]
    pub bcc: Option<Vec<crate::models::MailMessageItemForListAllOfFromInner>>,
    /// The mail message body URL
    #[serde(rename = "body_url", skip_serializing_if = "Option::is_none")]
    pub body_url: Option<String>,
    /// The connection account ID
    #[serde(rename = "account_id", skip_serializing_if = "Option::is_none")]
    pub account_id: Option<String>,
    /// ID of the user whom mail message will be assigned to
    #[serde(rename = "user_id", skip_serializing_if = "Option::is_none")]
    pub user_id: Option<i32>,
    /// ID of the mail message thread
    #[serde(rename = "mail_thread_id", skip_serializing_if = "Option::is_none")]
    pub mail_thread_id: Option<i32>,
    /// The subject of mail message
    #[serde(rename = "subject", skip_serializing_if = "Option::is_none")]
    pub subject: Option<String>,
    /// The snippet of mail message. Snippet length is up to 225 characters.
    #[serde(rename = "snippet", skip_serializing_if = "Option::is_none")]
    pub snippet: Option<String>,
    /// The status of tracking mail message. Value is `null` if tracking is not enabled.
    #[serde(rename = "mail_tracking_status", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub mail_tracking_status: Option<Option<MailTrackingStatus>>,
    #[serde(rename = "mail_link_tracking_enabled_flag", skip_serializing_if = "Option::is_none")]
    pub mail_link_tracking_enabled_flag: Option<MailLinkTrackingEnabledFlag>,
    #[serde(rename = "read_flag", skip_serializing_if = "Option::is_none")]
    pub read_flag: Option<ReadFlag>,
    /// If the mail message has a draft status then the value is the mail message object as JSON formatted string, otherwise `null`.
    #[serde(rename = "draft", skip_serializing_if = "Option::is_none")]
    pub draft: Option<String>,
    #[serde(rename = "draft_flag", skip_serializing_if = "Option::is_none")]
    pub draft_flag: Option<DraftFlag>,
    #[serde(rename = "synced_flag", skip_serializing_if = "Option::is_none")]
    pub synced_flag: Option<SyncedFlag>,
    #[serde(rename = "deleted_flag", skip_serializing_if = "Option::is_none")]
    pub deleted_flag: Option<DeletedFlag>,
    #[serde(rename = "has_body_flag", skip_serializing_if = "Option::is_none")]
    pub has_body_flag: Option<HasBodyFlag>,
    #[serde(rename = "sent_flag", skip_serializing_if = "Option::is_none")]
    pub sent_flag: Option<SentFlag>,
    #[serde(rename = "sent_from_pipedrive_flag", skip_serializing_if = "Option::is_none")]
    pub sent_from_pipedrive_flag: Option<SentFromPipedriveFlag>,
    #[serde(rename = "smart_bcc_flag", skip_serializing_if = "Option::is_none")]
    pub smart_bcc_flag: Option<SmartBccFlag>,
    /// Creation or receival time of the mail message
    #[serde(rename = "message_time", skip_serializing_if = "Option::is_none")]
    pub message_time: Option<String>,
    /// The insertion into the database time of the mail message
    #[serde(rename = "add_time", skip_serializing_if = "Option::is_none")]
    pub add_time: Option<String>,
    /// The updating time in the database of the mail message
    #[serde(rename = "update_time", skip_serializing_if = "Option::is_none")]
    pub update_time: Option<String>,
    #[serde(rename = "has_attachments_flag", skip_serializing_if = "Option::is_none")]
    pub has_attachments_flag: Option<HasAttachmentsFlag>,
    #[serde(rename = "has_inline_attachments_flag", skip_serializing_if = "Option::is_none")]
    pub has_inline_attachments_flag: Option<HasInlineAttachmentsFlag>,
    #[serde(rename = "has_real_attachments_flag", skip_serializing_if = "Option::is_none")]
    pub has_real_attachments_flag: Option<HasRealAttachmentsFlag>,
    /// The Mail Message ID assigned by the sync provider
    #[serde(rename = "nylas_id", skip_serializing_if = "Option::is_none")]
    pub nylas_id: Option<String>,
    /// The name of the S3 bucket
    #[serde(rename = "s3_bucket", skip_serializing_if = "Option::is_none")]
    pub s3_bucket: Option<String>,
    /// The path of the S3 bucket
    #[serde(rename = "s3_bucket_path", skip_serializing_if = "Option::is_none")]
    pub s3_bucket_path: Option<String>,
    /// If the Mail Message has been deleted on the provider side or not
    #[serde(rename = "external_deleted_flag", skip_serializing_if = "Option::is_none")]
    pub external_deleted_flag: Option<bool>,
    /// The Mail Message ID assigned by the mail user agent
    #[serde(rename = "mua_message_id", skip_serializing_if = "Option::is_none")]
    pub mua_message_id: Option<String>,
    /// The ID of the mail template
    #[serde(rename = "template_id", skip_serializing_if = "Option::is_none")]
    pub template_id: Option<i32>,
    /// The add date and time of the Mail Message
    #[serde(rename = "timestamp", skip_serializing_if = "Option::is_none")]
    pub timestamp: Option<String>,
    /// The type of the data item
    #[serde(rename = "item_type", skip_serializing_if = "Option::is_none")]
    pub item_type: Option<String>,
    /// The ID of the company
    #[serde(rename = "company_id", skip_serializing_if = "Option::is_none")]
    pub company_id: Option<i32>,
}

impl MailMessageItemForList {
    pub fn new() -> MailMessageItemForList {
        MailMessageItemForList {
            id: None,
            from: None,
            to: None,
            cc: None,
            bcc: None,
            body_url: None,
            account_id: None,
            user_id: None,
            mail_thread_id: None,
            subject: None,
            snippet: None,
            mail_tracking_status: None,
            mail_link_tracking_enabled_flag: None,
            read_flag: None,
            draft: None,
            draft_flag: None,
            synced_flag: None,
            deleted_flag: None,
            has_body_flag: None,
            sent_flag: None,
            sent_from_pipedrive_flag: None,
            smart_bcc_flag: None,
            message_time: None,
            add_time: None,
            update_time: None,
            has_attachments_flag: None,
            has_inline_attachments_flag: None,
            has_real_attachments_flag: None,
            nylas_id: None,
            s3_bucket: None,
            s3_bucket_path: None,
            external_deleted_flag: None,
            mua_message_id: None,
            template_id: None,
            timestamp: None,
            item_type: None,
            company_id: None,
        }
    }
}

/// The status of tracking mail message. Value is `null` if tracking is not enabled.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MailTrackingStatus {
    #[serde(rename = "opened")]
    Opened,
    #[serde(rename = "not opened")]
    NotOpened,
}

impl Default for MailTrackingStatus {
    fn default() -> MailTrackingStatus {
        Self::Opened
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MailLinkTrackingEnabledFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for MailLinkTrackingEnabledFlag {
    fn default() -> MailLinkTrackingEnabledFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ReadFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for ReadFlag {
    fn default() -> ReadFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DraftFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for DraftFlag {
    fn default() -> DraftFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SyncedFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for SyncedFlag {
    fn default() -> SyncedFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DeletedFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for DeletedFlag {
    fn default() -> DeletedFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum HasBodyFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for HasBodyFlag {
    fn default() -> HasBodyFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SentFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for SentFlag {
    fn default() -> SentFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SentFromPipedriveFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for SentFromPipedriveFlag {
    fn default() -> SentFromPipedriveFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SmartBccFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for SmartBccFlag {
    fn default() -> SmartBccFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum HasAttachmentsFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for HasAttachmentsFlag {
    fn default() -> HasAttachmentsFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum HasInlineAttachmentsFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for HasInlineAttachmentsFlag {
    fn default() -> HasInlineAttachmentsFlag {
        Self::Variant0
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum HasRealAttachmentsFlag {
    #[serde(rename = "0")]
    Variant0,
    #[serde(rename = "1")]
    Variant1,
}

impl Default for HasRealAttachmentsFlag {
    fn default() -> HasRealAttachmentsFlag {
        Self::Variant0
    }
}