<aside> 👉
Links (Block base class)
Notion Ruby Mapping Public API Reference
</aside>
Creates a to-do block. The Notion API block type is to_do.
[PARAM(optional)] text_info
text content. When omitted, the block is created with an empty rich_text array.
<aside> 📃
The following objects are used for this argument.
[PARAM(optional)] checked true if to-do is checked. When checked is not specified, use false.
[PARAM(optional)] sub_blocks
children blocks (Array of Blocks). In append block children API , there is a limit for nesting children as follows. So, children blocks can not have any children.
For blocks that allow children, we allow up to two levels of nesting in a single request.
[PARAM(optional)] color
color string. When color is not specified, use “default”.
This block can have children blocks.
self.new creates a ToDoBlock object using a text_info. sub_blocks, color and checked are optional parameters.
b = ToDoBlock.new "Sample To Do"
b.block_json
# => {"type"=>"to_do", "object"=>"block", "to_do"=>{"rich_text"=>[{"type"=>"text", "text"=>{"content"=>"Sample To Do", "link"=>nil}, "plain_text"=>"Sample To Do", "href"=>nil}], "color"=>"default", "checked"=>false}}
$\fbox{implemented in Block}$
position)
nil (default): append at the end"start": insert at the beginning"end": insert at the end (explicit)"<block_id>": insert after the specified block id (after_block)append_block_children method of an existing block appends some block objects. Some blocks allow child blocks to be set up at the same time. However, due to API limitations, grandchild blocks cannot be created at once. There are many types of blocks, so check the page( Append block children sample) to see how to create blocks.
parent_block = Block.find "065babbba0854c188e964feb56291be2"
parent_block.append_block_children CodeBlock.new("% ls -l", caption: "List files")
# =>
# #<NotionRubyMapping::Block:0x0000000104e7d150
append_block_children(blocks, dry_run: true) creates a shell script using Append block children API for verification.
parent_block.append_block_children CodeBlock.new("% ls -l", caption: "List files"), dry_run: true
# => "#!/bin/sh\ncurl -X PATCH '<https://api.notion.com/v1/blocks/065babbba0854c188e964feb56291be2/children>' \\\n -H 'Notion-Version: 2022-02-22' \\\n -H 'Authorization: Bearer '\"$NOTION_API_KEY\"'' \\\n -H 'Content-Type: application/json' \\\n --data '{\"children\":[{\"type\":\"code\",\"object\":\"block\",\"code\":{\"rich_text\":[{\"type\":\"text\",\"text\":{\"content\":\"% ls -l\",\"link\":null},\"plain_text\":\"% ls -l\",\"href\":null}],\"caption\":[{\"type\":\"text\",\"text\":{\"content\":\"List files\",\"link\":null},\"plain_text\":\"List files\",\"href\":null}],\"language\":\"shell\"}}]}'"
checked returns whether the ToDoBlock is checked. When the object is created from retrieved block JSON, the value of the JSON checked field is restored to this attribute.
checked= updates the checked flag for ToDoBlock and registers checked as an update target in the payload. Assigning false keeps checked: false in the update payload; it is not omitted.
$\fbox{implemented in TextSubBlockColorBaseBlock}$
color returns the color string for ToDoBlock.