notion_client/objects/
parent.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4#[derive(Serialize, Deserialize, Clone, Debug, Eq, PartialEq, Default)]
5#[serde(tag = "type", rename_all = "snake_case")]
6pub enum Parent {
7    #[default]
8    None,
9    DatabaseId {
10        database_id: String,
11    },
12    PageId {
13        page_id: String,
14    },
15    Workspace {
16        workspace: bool,
17    },
18    BlockId {
19        block_id: String,
20    },
21}
22
23#[derive(Serialize, Deserialize, Clone, Debug, Eq, PartialEq)]
24pub struct HostedFile {
25    pub url: String,
26    pub expiry_time: DateTime<Utc>,
27}
28
29#[derive(Serialize, Deserialize, Clone, Debug, Eq, PartialEq)]
30pub struct ExternalFile {
31    pub url: String,
32}