# Notion API API

> Notion API API on Apizie: 20 endpoints (Create a token, Retrieve block children, Append block children, Retrieve a block, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/business:notion/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `business:notion`
- Category: Business
- Status: byok
- Source: https://developers.notion.com
- Page: https://apizie.tech/api/business/notion
- OpenAPI: https://apizie.tech/api/business/notion/openapi.json

Notion is a new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.

## Endpoints

### Create a token
`POST https://apizie.tech/v1/business:notion/token-generate-access` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Retrieve block children
`GET https://apizie.tech/v1/business:notion/block-get-children` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| block_id | string | yes | Identifier for a [block](ref:block) |
| start_cursor | string | no | If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return… |
| page_size | integer | no | The number of items from the full list desired in the response. Maximum: 100 |
| Notion-Version | string | yes |  |

### Append block children
`POST https://apizie.tech/v1/business:notion/block-append-children` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| block_id | string | yes | Identifier for a [block](ref:block). Also accepts a [page](ref:page) ID. |
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

### Retrieve a block
`GET https://apizie.tech/v1/business:notion/block-get-details` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| block_id | string | yes | Identifier for a Notion block |
| Notion-Version | string | no |  |

### Update a block
`POST https://apizie.tech/v1/business:notion/block-update-block-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| block_id | string | yes | Identifier for a Notion block |
| Notion-Version | string | no |  |
| body | object | no | JSON request body |

### Delete a block
`POST https://apizie.tech/v1/business:notion/block-remove-block-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| block_id | string | yes | Identifier for a Notion block |
| Notion-Version | string | no |  |

### Create a page
`POST https://apizie.tech/v1/business:notion/page-create-new-page` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

### Retrieve a page
`GET https://apizie.tech/v1/business:notion/page-get-page` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page_id | string | yes | Identifier for a Notion page |
| filter_properties | string | no | A list of page property value IDs associated with the page. Use this param to limit the response to a specific page property value or… |
| Notion-Version | string | yes |  |

### Update page properties
`POST https://apizie.tech/v1/business:notion/page-update-properties` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page_id | string | yes | The identifier for the Notion page to be updated. |
| Notion-Version | string | no |  |
| body | object | no | JSON request body |

### Retrieve a page property item
`GET https://apizie.tech/v1/business:notion/page-get-property-item` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| page_id | string | yes | Identifier for a Notion page |
| property_id | string | yes | Identifier for a page [property](https://developers.notion.com/reference/page#all-property-values) |
| page_size | integer | no | For paginated properties. The max number of property item objects on a page. The default size is 100 |
| start_cursor | string | no | For paginated properties. |
| Notion-Version | string | no |  |

### Create a database
`POST https://apizie.tech/v1/business:notion/database-create-new-database` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

### Query a database
`POST https://apizie.tech/v1/business:notion/database-execute-query` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| database_id | string | yes | Identifier for a Notion database. |
| filter_properties | string | no | A list of page property value IDs associated with the database. Use this param to limit the response to a specific page property value or… |
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

### Retrieve a database
`GET https://apizie.tech/v1/business:notion/database-get-database` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| database_id | string | yes | An identifier for the Notion database. |
| Notion-Version | string | yes |  |

### Update a database
`POST https://apizie.tech/v1/business:notion/database-update-database` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| database_id | string | yes | identifier for a Notion database |
| Notion-Version | string | no |  |
| body | object | no | JSON request body |

### List all users
`GET https://apizie.tech/v1/business:notion/user-list-all-users` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| start_cursor | string | no | If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return… |
| page_size | integer | no | The number of items from the full list desired in the response. Maximum: 100 |
| Notion-Version | string | yes |  |

### Retrieve a user
`GET https://apizie.tech/v1/business:notion/user-get-user-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| user_id | string | yes | Identifier for a Notion user |
| Notion-Version | string | yes |  |

### Retrieve your token's bot user
`GET https://apizie.tech/v1/business:notion/user-get-token-bot-user` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |

### Retrieve comments
`GET https://apizie.tech/v1/business:notion/comment-get-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |
| block_id | string | yes | Identifier for a Notion block or page |
| start_cursor | string | no | If supplied, this endpoint will return a page of results starting after the cursor provided. If not supplied, this endpoint will return… |
| page_size | integer | no | The number of items from the full list desired in the response. Maximum: 100 |

### Create comment
`POST https://apizie.tech/v1/business:notion/comment-create-new` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

### Search by title
`POST https://apizie.tech/v1/business:notion/search-by-title` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Notion-Version | string | yes |  |
| body | object | no | JSON request body |

## Example
```
curl "https://apizie.tech/v1/business:notion/token-generate-access" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Notion API API?
Create a free Apizie key, then send POST https://apizie.tech/v1/business:notion/token-generate-access with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Notion API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Notion API itself also needs your own key from api.notion.com.

### Can AI agents use the Notion API API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key business:notion.

### What is the status of the Notion API API?
Needs your own provider key (bring your own key)
