Skip to main content
PATCH
Updates a row or subpage. Requires Update content. Only rows the integration can read can be updated. The last editor becomes the integration bot. Only the keys you send change. An empty body changes nothing and returns 200. Locked rows and databases can still be updated.
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 ID of a row or subpage.
object
Values keyed by property name or ID. See Property values. A subpage only accepts title.
boolean
true moves it to the trash, and false restores it. Subpages under the row move with it. Other rows linked as sub-items don’t.
boolean
Archives or unarchives. Archived rows are left out of default queries.
boolean
Locks or unlocks.
object | null
Accepts emoji, custom_emoji, icon, file (only the current icon’s image), and null. Icon names aren’t checked. external returns 400.
object | null
Accepts external (an http(s) URL), file (only the current cover’s image), and null.
object
{ "mode": "default" } or { "mode": "silent" }. Only the format is checked; it doesn’t change behavior.
object
Only the format is checked. It doesn’t move anything.

Trash rules

  • A trashed row only accepts in_trash: false. Other writes return 400 Can't edit block that is archived. You must unarchive the block before editing.
  • A row of a trashed database can’t be updated, with the same 400.
  • A row holding a subpage or inline database row the integration can’t read can’t be trashed or restored. The response is 403.
  • A subpage whose parent is in the trash can’t be restored. The response is 400.
  • The archived key isn’t accepted. Use in_trash.
Restoring, writing properties, and trashing are saved in turn. Values are validated first, but a rare storage error can leave only the earlier steps applied.

Keys that aren’t accepted

children, content, markdown, markdown_version, allow_async, template, position, and erase_content return 400, because content can’t be written.

Response

The updated page object, with all properties.

Errors

See Common rules for shared errors.