V2
Delete Block
Soft-delete one block and return its trash state.
Delete Block
Use Case
Use this endpoint to soft-delete one block.
Endpoint
| Item | Value |
|---|---|
| Method | DELETE |
| Path | /v2/blocks/:block_id |
| Request body | None |
| Returns | block |
| Scope | blocks.write |
Permissions
Requires blocks.write and access to the target resource.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
block_id |
string | Yes | Block ID. |
Response Example
{
"object": "block",
"id": "44444444-4444-4444-8444-444444444444",
"parent": {
"type": "page_id",
"page_id": "11111111-1111-4111-8111-111111111111"
},
"created_time": "2026-04-09T08:00:00.000Z",
"last_edited_time": "2026-04-09T09:30:00.000Z",
"created_by": {
"object": "user",
"id": "bbbbbbbb-bbbb-4bbb-8bbb-bbbbbbbbbbbb"
},
"last_edited_by": {
"object": "user",
"id": "bbbbbbbb-bbbb-4bbb-8bbb-bbbbbbbbbbbb"
},
"has_children": false,
"in_trash": true,
"type": "paragraph",
"paragraph": {
"rich_text": [
{
"type": "text",
"text": {
"content": "Project kickoff notes",
"link": null
},
"plain_text": "Project kickoff notes",
"href": null
}
],
"color": "default"
}
}
Behavior
- The endpoint performs a soft delete by moving the target to trash.
- The response returns the target object or a deletion state with
in_trash: true. - Use the corresponding update endpoint when you need to explicitly set trash state as part of a larger update.
Errors
401 unauthorized: invalid or expired token.403 forbidden: missing scope or no access.404 not_found: target resource does not exist.