linkbreakers 1.46.9

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.46.9
 * 
 * Generated by: https://openapi-generator.tech
 */

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

/// Media : Stores workspace-managed assets such as QR center logos or downloadable files that Linkbreakers signs and serves alongside link experiences.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Media {
    #[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
    pub created_at: Option<String>,
    #[serde(rename = "fileName", skip_serializing_if = "Option::is_none")]
    pub file_name: Option<String>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    /// Supports CENTRAL_QRCODE_IMAGE (center logo for QR codes), BACKGROUND_COVER (background cover for page themes), and BADGE (badge image for page themes)
    #[serde(rename = "mediaType", skip_serializing_if = "Option::is_none")]
    pub media_type: Option<models::MediaType>,
    #[serde(rename = "mimeType", skip_serializing_if = "Option::is_none")]
    pub mime_type: Option<String>,
    #[serde(rename = "signedUrl", skip_serializing_if = "Option::is_none")]
    pub signed_url: Option<String>,
    #[serde(rename = "size", skip_serializing_if = "Option::is_none")]
    pub size: Option<String>,
    #[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
    pub updated_at: Option<String>,
    /// The member who uploaded the file If it was uploaded through the public API, or if the member was removed from the workspace, the uploaded_by will be null.
    #[serde(rename = "uploadedBy", skip_serializing_if = "Option::is_none")]
    pub uploaded_by: Option<String>,
    /// If not provided, the media file will be private to the workspace.
    #[serde(rename = "visibility", skip_serializing_if = "Option::is_none")]
    pub visibility: Option<models::MediaVisibility>,
    #[serde(rename = "workspaceId", skip_serializing_if = "Option::is_none")]
    pub workspace_id: Option<String>,
}

impl Media {
    /// Stores workspace-managed assets such as QR center logos or downloadable files that Linkbreakers signs and serves alongside link experiences.
    pub fn new() -> Media {
        Media {
            created_at: None,
            file_name: None,
            id: None,
            media_type: None,
            mime_type: None,
            signed_url: None,
            size: None,
            updated_at: None,
            uploaded_by: None,
            visibility: None,
            workspace_id: None,
        }
    }
}