asana 0.1.1

asana bindings for rust
Documentation
/*
 * Asana
 *
 * This is the interface for interacting with the [Asana Platform](https://developers.asana.com). Our API reference is generated from our [OpenAPI spec] (https://raw.githubusercontent.com/Asana/developer-docs/master/defs/asana_oas.yaml).
 *
 * The version of the OpenAPI document: 1.0
 *
 * Generated by: https://openapi-generator.tech
 */

#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct UserResponse {
    /// Globally unique identifier of the resource, as a string.
    #[serde(rename = "gid", skip_serializing_if = "Option::is_none")]
    pub gid: Option<String>,
    /// The base type of this resource.
    #[serde(rename = "resource_type", skip_serializing_if = "Option::is_none")]
    pub resource_type: Option<String>,
    /// *Read-only except when same user as requester*. The user’s name.
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    /// The user's email address.
    #[serde(rename = "email", skip_serializing_if = "Option::is_none")]
    pub email: Option<String>,
    #[serde(rename = "photo", skip_serializing_if = "Option::is_none")]
    pub photo: Option<Box<crate::models::UserResponseAllOfPhoto>>,
    /// Workspaces and organizations this user may access. Note\\: The API will only return workspaces and organizations that also contain the authenticated user.
    #[serde(rename = "workspaces", skip_serializing_if = "Option::is_none")]
    pub workspaces: Option<Vec<crate::models::WorkspaceCompact>>,
}

impl UserResponse {
    pub fn new() -> UserResponse {
        UserResponse {
            gid: None,
            resource_type: None,
            name: None,
            email: None,
            photo: None,
            workspaces: None,
        }
    }
}