Developer API
Get Block
V2

Get Block

Fetch a single block with its metadata and type-specific content.

GET /v2/blocks/:block_id

Get Block

Use Case

Use this endpoint to fetch one block, including its metadata and the content object for its type.

Endpoint

Item Value
Method GET
Path /v2/blocks/:block_id
Request body None
Returns block
Scope blocks.read

Permissions

Requires blocks.read and access to the block.

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": false,
  "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 block content is expanded under the field named by type, for example paragraph or heading_1.
  • has_children tells you whether to call the child-block endpoint.
  • This endpoint returns one block only; it does not return descendants.

Errors

  • 401 unauthorized: invalid or expired token.
  • 403 forbidden: missing blocks.read or no access.
  • 404 not_found: block does not exist.

Prerequisites

Next Steps

References