Jupyter Notebook · Schema
Jupyter Contents Model
Schema for the Jupyter Contents API model representing files, directories, and notebooks in the Jupyter file system. This is the primary data structure returned by the Contents REST API.
Data ScienceInteractive ComputingJupyterMachine LearningNotebooksPython
Properties
| Name | Type | Description |
|---|---|---|
| name | string | Name of the file or directory (e.g., 'Untitled.ipynb'). |
| path | string | Full path relative to the root directory (e.g., 'path/to/Untitled.ipynb'). |
| type | string | Type of content. |
| writable | boolean | Whether the requester has write permission. |
| created | string | Creation timestamp in ISO 8601 format. |
| last_modified | string | Last modification timestamp in ISO 8601 format. |
| size | integernull | Size in bytes. Null for directories and notebooks. |
| mimetype | stringnull | MIME type of the content. Null for directories and notebooks. |
| content | object | The content itself. For directories, an array of contents models (without content). For notebooks, the notebook JSON object. For files, a string (text) or base64-encoded string. |
| format | stringnull | Format of the content field. |
| hash | stringnull | Hash of the file content for change detection. |
| hash_algorithm | stringnull | Algorithm used to compute the hash (e.g., 'sha256'). |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "jupyter-contents-model.json",
"title": "Jupyter Contents Model",
"description": "Schema for the Jupyter Contents API model representing files, directories, and notebooks in the Jupyter file system. This is the primary data structure returned by the Contents REST API.",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the file or directory (e.g., 'Untitled.ipynb')."
},
"path": {
"type": "string",
"description": "Full path relative to the root directory (e.g., 'path/to/Untitled.ipynb')."
},
"type": {
"type": "string",
"description": "Type of content.",
"enum": ["notebook", "file", "directory"]
},
"writable": {
"type": "boolean",
"description": "Whether the requester has write permission."
},
"created": {
"type": "string",
"format": "date-time",
"description": "Creation timestamp in ISO 8601 format."
},
"last_modified": {
"type": "string",
"format": "date-time",
"description": "Last modification timestamp in ISO 8601 format."
},
"size": {
"type": ["integer", "null"],
"description": "Size in bytes. Null for directories and notebooks.",
"minimum": 0
},
"mimetype": {
"type": ["string", "null"],
"description": "MIME type of the content. Null for directories and notebooks."
},
"content": {
"description": "The content itself. For directories, an array of contents models (without content). For notebooks, the notebook JSON object. For files, a string (text) or base64-encoded string."
},
"format": {
"type": ["string", "null"],
"description": "Format of the content field.",
"enum": ["json", "text", "base64", null]
},
"hash": {
"type": ["string", "null"],
"description": "Hash of the file content for change detection."
},
"hash_algorithm": {
"type": ["string", "null"],
"description": "Algorithm used to compute the hash (e.g., 'sha256')."
}
},
"required": ["name", "path", "type", "writable", "created", "last_modified"],
"if": {
"properties": {
"type": {"const": "directory"}
}
},
"then": {
"properties": {
"content": {
"type": ["array", "null"],
"items": {
"$ref": "#"
}
},
"format": {
"const": "json"
}
}
}
}