- Add generate_block_docs.py script that introspects block code to
generate markdown
- Support manual content preservation via <!-- MANUAL: --> markers
- Add migrate_block_docs.py to preserve existing manual content from git
HEAD
- Add CI workflow (docs-block-sync.yml) to fail if docs drift from code
- Add Claude PR review workflow (docs-claude-review.yml) for doc changes
- Add manual LLM enhancement workflow (docs-enhance.yml)
- Add GitBook configuration (.gitbook.yaml, SUMMARY.md)
- Fix non-deterministic category ordering (categories is a set)
- Add comprehensive test suite (32 tests)
- Generate docs for 444 blocks with 66 preserved manual sections
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
<!-- Clearly explain the need for these changes: -->
### Changes 🏗️
<!-- Concisely describe all of the changes made in this pull request:
-->
### Checklist 📋
#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
<!-- Put your test plan here: -->
- [x] Extensively test code generation for the docs pages
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Introduces an automated documentation pipeline for blocks and
integrates it into CI.
>
> - Adds `scripts/generate_block_docs.py` (+ tests) to introspect blocks
and generate `docs/integrations/**`, preserving `<!-- MANUAL: -->`
sections
> - New CI workflows: **docs-block-sync** (fails if docs drift),
**docs-claude-review** (AI review for block/docs PRs), and
**docs-enhance** (optional LLM improvements)
> - Updates existing Claude workflows to use `CLAUDE_CODE_OAUTH_TOKEN`
instead of `ANTHROPIC_API_KEY`
> - Improves numerous block descriptions/typos and links across backend
blocks to standardize docs output
> - Commits initial generated docs including
`docs/integrations/README.md` and many provider/category pages
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
631e53e0f6. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2.2 KiB
Notion Read Database
Blocks for querying and reading data from Notion databases.
Notion Read Database
What it is
Query a Notion database with optional filtering and sorting, returning structured entries.
How it works
This block queries a Notion database using the Notion API. It retrieves entries with optional filtering by property values and sorting. The block requires your Notion integration to have access to the database.
Results include all property values for each entry, the entry IDs for further operations, and the total count. The database connection must be shared with your integration from Notion.
Inputs
| Input | Description | Type | Required |
|---|---|---|---|
| database_id | Notion database ID. Must be accessible by the connected integration. | str | Yes |
| filter_property | Property name to filter by (e.g., 'Status', 'Priority') | str | No |
| filter_value | Value to filter for in the specified property | str | No |
| sort_property | Property name to sort by | str | No |
| sort_direction | Sort direction: 'ascending' or 'descending' | str | No |
| limit | Maximum number of entries to retrieve | int | No |
Outputs
| Output | Description | Type |
|---|---|---|
| error | Error message if the operation failed | str |
| entries | List of database entries with their properties. | List[Dict[str, Any]] |
| entry | Individual database entry (yields one per entry found). | Dict[str, Any] |
| entry_ids | List of entry IDs for batch operations. | List[str] |
| entry_id | Individual entry ID (yields one per entry found). | str |
| count | Number of entries retrieved. | int |
| database_title | Title of the database. | str |
Possible use case
Task Management: Query a Notion task database to find items with a specific status or assigned to a particular person.
Content Pipeline: Read entries from a content calendar database to identify posts scheduled for today or this week.
CRM Sync: Fetch customer records from a Notion database to sync with other systems or trigger workflows.