---
title: "Get contents of file or directory"
method: GET
path: "/api/contents/{path}"
tags: ["contents"]
---

# Get contents of file or directory

`GET /api/contents/{path}`

A client can optionally specify a type and/or format argument via URL parameter. When given, the Contents service shall return a model in the requested type and/or format. If the request cannot be satisfied, e.g. type=text is requested, but the file is binary, then the request shall fail with 400 and have a JSON response containing a 'reason' field, with the value 'bad format' or 'bad type', depending on what was requested.

## Path parameters

- `path` string, required

## Query parameters

- `type` 'file' | 'directory'
- `format` 'text' | 'base64'
- `content` integer
- `hash` integer

## Response `200`

Contents of file or directory

- Contents — A contents object. The content and format keys may be null if content is not contained. The hash maybe null if hash is not required. If type is 'file', then the mimetype will be null.
  - `name` string, required — Name of file or directory, equivalent to the last part of the path
  - `path` string, required — Full path for file or directory
  - `type` 'directory' | 'file' | 'notebook', required — Type of content
  - `writable` boolean, required — indicates whether the requester has permission to edit the file
  - `created` string, dateTime, required — Creation timestamp
  - `last_modified` string, dateTime, required — Last modified timestamp
  - `size` integer — The size of the file or notebook in bytes. If no size is provided, defaults to null.
  - `mimetype` string, required — The mimetype of a file. If content is not null, and type is 'file', this will contain the mimetype of the file, otherwise this will be null.
  - `content` union — The content, if requested (otherwise null). Will be an array if type is 'directory'
    - string
    - Contents[]
  - `format` string, required — Format of content (one of null, 'text', 'base64', 'json')
  - `hash` string — [optional] The hexdigest hash string of content, if requested (otherwise null). It cannot be null if hash_algorithm is defined.
  - `hash_algorithm` string — [optional] The algorithm used to produce the hash, if requested (otherwise null). It cannot be null if hash is defined.

## Other responses

- `400` — Bad request
- `404` — No item found
- `500` — Model key error

## Changes

> 2 revisions in range; 1 could not be searched.

- **2025-12-10** `e9ae9d653401` — 2 breaking, 1 warning
  - removed the media type `application/json` for the response with the status `200`
  - removed the media type `application/json` for the response with the status `400`
  - deleted the `path` request parameter `path`

[Change history](https://skmtc.dev/google/apis/jupyter-server-api/changes/api/contents/:path/get.md)

---

[API](https://skmtc.dev/google/apis/jupyter-server-api.md) · [All operations](https://skmtc.dev/google/apis/jupyter-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/google/jupyter-server-api/revisions/b6f1ce06c896/schema)
