---
title: "Start a kernel and return the uuid"
method: POST
path: "/api/kernels"
tags: ["kernels"]
---

# Start a kernel and return the uuid

`POST /api/kernels`

## Request body

- object
  - `name` string, required — Kernel spec name (defaults to default kernel spec for server)
  - `path` string — API path from root to the cwd of the kernel

## Response `201`

Kernel started

- Kernel — Kernel information
  - `id` string, uuid, required — uuid of kernel
  - `name` string, required — kernel spec name
  - `last_activity` string — ISO 8601 timestamp for the last-seen activity on this kernel. Use this in combination with execution_state == 'idle' to identify which kernels have been idle since a given time. Timestamps will be UTC, indicated 'Z' suffix. Added in notebook server 5.0.
  - `connections` number — The number of active connections to this kernel.
  - `execution_state` string — Current execution state of the kernel (typically 'idle' or 'busy', but may be other values, such as 'starting'). Added in notebook server 5.0.

## Changes

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

- **2025-12-10** `e9ae9d653401` — 2 breaking
  - removed the request body
  - removed the media type `application/json` for the response with the status `201`

[Change history](https://skmtc.dev/google/apis/jupyter-server-api/changes/api/kernels/post.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)
