Skip to main content
PATCH
Changes one block, or moves it to or from the trash. Requires Update content. Only the fields you send change, but headings and list items always need rich_text. An empty body changes nothing and returns 200. To change a document’s or subpage’s title, use Update a page. Sending a document ID here returns 400.
string
required
Bearer <token>. See Tokens.
string
Optional. Only 2026-03-11 is accepted. Without it, the current version is used. A different value returns 400.
string
required
The block ID.
object
The key is the block’s current type, and the value holds the fields to change. See the table below.
boolean
true deletes the block, like Delete a block. false restores it. Sending this with the type key saves both.

What can change

Rules

  • A block’s type can’t change. The response is 400 Block type mismatch: ...
  • table_of_contents.color and caption on bookmark and embed are accepted and ignored.
  • table_width can’t change, and synced_from can’t change. Sending the current synced_from does nothing.
  • A top-level children key returns 400. To add children, use Append block children. children inside the type key is ignored.
  • A heading with children can’t turn off is_toggleable. The response is 400 Cannot remove toggle from ... You must remove its children first.
  • A row of a table with merged cells can’t be updated. The response is 400.
  • Writing a cell replaces it with one paragraph of text, so an image or extra paragraphs in that cell are removed. Sending back what you read keeps them.
  • To stop mentions from notifying people, use notifications when appending. This endpoint doesn’t accept it and always notifies.

Comments

Replacing text removes the anchor of any inline comment on it. The comment moves to the document, with original_content_deleted: true. Read it with the document ID, not the block ID. Sending back the same rich_text you read keeps the anchor. Markdown updates also keep it when the commented text doesn’t change.

Response

The updated block object. See Retrieve a block.

Errors

See Common rules for shared errors.