asana/models/attachment_compact.rs
1/*
2 * Asana
3 *
4 * 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).
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
12pub struct AttachmentCompact {
13 /// Globally unique identifier of the resource, as a string.
14 #[serde(rename = "gid", skip_serializing_if = "Option::is_none")]
15 pub gid: Option<String>,
16 /// The base type of this resource.
17 #[serde(rename = "resource_type", skip_serializing_if = "Option::is_none")]
18 pub resource_type: Option<String>,
19 /// The name of the file.
20 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
21 pub name: Option<String>,
22 /// The service hosting the attachment. Valid values are `asana`, `dropbox`, `gdrive`, `onedrive`, `box`, and `external`. `external` attachments are a beta feature currently limited to specific integrations.
23 #[serde(
24 rename = "resource_subtype",
25 skip_serializing_if = "Option::is_none"
26 )]
27 pub resource_subtype: Option<serde_json::Value>,
28}
29
30impl AttachmentCompact {
31 pub fn new() -> AttachmentCompact {
32 AttachmentCompact {
33 gid: None,
34 resource_type: None,
35 name: None,
36 resource_subtype: None,
37 }
38 }
39}