linkbreakers 1.90.0

Official Rust SDK for the Linkbreakers API
Documentation
/*
 * Linkbreakers API
 *
 * This is a documentation of all the APIs of Linkbreakers
 *
 * The version of the OpenAPI document: 1.90.0
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// SlackIntegration : Represents a connected Slack workspace integration that receives event notifications in a configured channel when workflow steps complete.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SlackIntegration {
    #[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
    pub created_at: Option<String>,
    #[serde(rename = "createdBy", skip_serializing_if = "Option::is_none")]
    pub created_by: Option<String>,
    #[serde(rename = "failureCount", skip_serializing_if = "Option::is_none")]
    pub failure_count: Option<String>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    #[serde(rename = "lastSentAt", skip_serializing_if = "Option::is_none")]
    pub last_sent_at: Option<String>,
    /// Filter notifications by a specific link ID. Only events from this link will trigger notifications. If empty, all links in the workspace will trigger notifications.
    #[serde(rename = "linkId", skip_serializing_if = "Option::is_none")]
    pub link_id: Option<String>,
    #[serde(rename = "slackChannelId", skip_serializing_if = "Option::is_none")]
    pub slack_channel_id: Option<String>,
    #[serde(rename = "slackChannelName", skip_serializing_if = "Option::is_none")]
    pub slack_channel_name: Option<String>,
    #[serde(rename = "slackTeamId", skip_serializing_if = "Option::is_none")]
    pub slack_team_id: Option<String>,
    #[serde(rename = "slackTeamName", skip_serializing_if = "Option::is_none")]
    pub slack_team_name: Option<String>,
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<models::SlackIntegrationStatus>,
    #[serde(rename = "successCount", skip_serializing_if = "Option::is_none")]
    pub success_count: Option<String>,
    /// Filter notifications by workflow step kinds. Only workflow steps matching these kinds will trigger notifications. If empty, all workflow step kinds will trigger notifications.
    #[serde(rename = "triggers", skip_serializing_if = "Option::is_none")]
    pub triggers: Option<Vec<models::WorkflowStepKind>>,
    #[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
    pub updated_at: Option<String>,
    #[serde(rename = "workspaceId", skip_serializing_if = "Option::is_none")]
    pub workspace_id: Option<String>,
}

impl SlackIntegration {
    /// Represents a connected Slack workspace integration that receives event notifications in a configured channel when workflow steps complete.
    pub fn new() -> SlackIntegration {
        SlackIntegration {
            created_at: None,
            created_by: None,
            failure_count: None,
            id: None,
            last_sent_at: None,
            link_id: None,
            slack_channel_id: None,
            slack_channel_name: None,
            slack_team_id: None,
            slack_team_name: None,
            status: None,
            success_count: None,
            triggers: None,
            updated_at: None,
            workspace_id: None,
        }
    }
}