<aside> 👉
Links (Block base class)
Notion Ruby Mapping Public API Reference
</aside>
self.new creates a TableOfContentsBlock object.  color is an optional parameter.
b = TableOfContents.new "green_background"
b.block_json
# => {"type"=>"table_of_contents", "object"=>"block", "table_of_contents"=>{"color"=>"green_background"}}
$\fbox{implemented in Block}$
save updates the Block object with update block API. The updated object has block information generated from the JSON response.
block = Block.find "899e342cec84415f9ff86225704cbb75" # Notion API call
block.url = "<https://www.apple.com/>"
block.save
# => #<NotionRubyMapping::Block:...> # updated Block object
Block.find(id, dry_run: true) creates a shell script using  Retrieve a block API for verification.
block = Block.find "899e342cec84415f9ff86225704cbb75" # Notion API call
block.url = "<https://www.apple.com/>"
block.save dry_run: true
# => 
# curl -X PATCH '<https://api.notion.com/v1/blocks/899e342cec84415f9ff86225704cbb75>' \\
#   -H 'Notion-Version: 2022-02-22' \\
#   -H 'Authorization: Bearer '"$NOTION_API_KEY"'' \\
#   -H 'Content-Type: application/json' \\
#   --data '{"bookmark":{"url":"<https://www.apple.com/>"}}'
url returns the url parameter of  BookmarkBlock.
b = TableOfContents.new "green_background"
b.color
# => "green_background"
color= updates the color parameter of block for TableOfContentsBlock and sets update_block_key of the payload object.
b = TableOfContents.new "green_background"
b.color = "orange_background"
b.update_block_json
# => {"table_of_contents"=>{"color"=>"orange_background"}}