TypeScript SDK
Comments
Create comment
Creates a comment in a page, block or existing discussion thread.
POST
TypeScript SDK
Returns a comment object for the created comment. There are three locations where a new comment can be added with the public API:Documentation Index
Fetch the complete documentation index at: https://developers.notion.com/llms.txt
Use this file to discover all available pages before exploring further.
- A page
- A block
- An existing discussion thread
parent object with a page_id or block_id must be provided in the body params.
To add a new comment to an existing discussion thread, a discussion_id string must be provided in the body params. (Inline comments to start a new discussion thread cannot be created via the public API.)
Either the parent.page_id , parent.block_id or discussion_id parameter must be provided — ONLY one can be specified.
Comment body format
The comment body can be provided in one of two formats:rich_text: An array of rich text objects that represent the content of the comment.markdown: A Markdown string. Comment Markdown supports inline formatting only (bold, italic, strikethrough, inline code, links), inline equations, and mentions. Block-level Markdown such as fenced code blocks, headings, lists, tables, and blockquotes does not render as structured blocks in comments.
rich_text or markdown must be provided. Providing both or neither will return a validation error.
To see additional examples of creating a page or discussion comment and to learn more about comments in Notion, see the Working with comments guide.
Errors
Each Public API endpoint can return several possible error codes. See the Error codes section of the Status codes documentation for more information.Reminder: Turn on connection comment capabilitiesConnection capabilities for reading and inserting comments are off by default.This endpoint requires a connection to have insert comment capabilities. Attempting to call this endpoint without insert comment capabilities will return an HTTP response with a 403 status code.For more information on connection capabilities, see the capabilities guide. To update your connection settings, visit the Developer portal.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
The API version to use for this request. The latest version is 2026-03-11.
Available options:
2026-03-11 Body
application/json
- Option 1
- Option 2
- Option 3
- Option 4
The parent of the comment. This can be a page or a block.
- Option 1
- Option 2
An array of rich text objects that represent the content of the comment.
Maximum array length:
100- Text
- Mention
- Equation
An array of files to attach to the comment. Maximum of 3 allowed.
Maximum array length:
3Display name for the comment.
- Integration
- User
- Custom