Notion · Schema
File
A File object represents a file in Notion. Files can be either hosted by Notion (type "file") or externally hosted (type "external").
CollaborationDatabaseIdeasNotesProductivityProjectsT1TasksWikiWorkspace
Properties
| Name | Type | Description |
|---|---|---|
| type | string | The type of file hosting. |
| file | object | Notion-hosted file details. Present when type is "file". These URLs expire after one hour. |
| external | object | External file details. Present when type is "external". |
| name | string | The name of the file. |
| caption | array | Caption for the file as rich text. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/File",
"title": "File",
"type": "object",
"description": "A File object represents a file in Notion. Files can be either hosted by Notion (type \"file\") or externally hosted (type \"external\").",
"properties": {
"type": {
"type": "string",
"description": "The type of file hosting.",
"enum": [
"file",
"external"
]
},
"file": {
"type": "object",
"description": "Notion-hosted file details. Present when type is \"file\". These URLs expire after one hour.",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The authenticated S3 URL for the file."
},
"expiry_time": {
"type": "string",
"format": "date-time",
"description": "The expiration time of the URL."
}
}
},
"external": {
"type": "object",
"description": "External file details. Present when type is \"external\".",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The URL of the externally hosted file."
}
}
},
"name": {
"type": "string",
"description": "The name of the file."
},
"caption": {
"type": "array",
"description": "Caption for the file as rich text.",
"items": {
"$ref": "#/components/schemas/RichText"
}
}
},
"required": [
"type"
]
}