---
title: "Add Notebook Cell"
method: POST
path: "/notebook/cell/add"
tags: ["runtime_mutations", "notebook"]
---

# Add Notebook Cell

`POST /notebook/cell/add`

Insert a new user-authored cell into the draft + live notebook state.

Used by the frontend so that subsequent same-session HTTP writes
(``/notebook/cell``, ``/execute``) are guaranteed to see the cell.

Idempotent: re-adding an existing ``cell_id`` returns success
without mutating the draft.

## Request body

- CellAddRequest
  - `notebook_id` string, required
  - `notebook_path` string, required
  - `cell_id` string, required
  - `cell_type` string
  - `content` string
  - `after_cell_id` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-18** `abf76937a751` — 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Change history](https://skmtc.dev/quadrillion/apis/quadrillion-cloud-api/changes/notebook/cell/add/post.md)

---

[API](https://skmtc.dev/quadrillion/apis/quadrillion-cloud-api.md) · [All operations](https://skmtc.dev/quadrillion/apis/quadrillion-cloud-api/llms.txt) · [OpenAPI document](https://skmtc.dev/quadrillion/apis/quadrillion-cloud-api/revisions/d7f2f3b8e82d?raw)
