<aside> 👉

Links (Block base class)

Page

AudioBlock

Block

CodeBlock

EmbedBlock

Heading2Block

LinkPreviewBlock

PdfBlock

TableOfContentsBlock

ToggleHeading1Block

VideoBlock

Database

BookmarkBlock

CalloutBlock

ColumnBlock

EquationBlock

Heading3Block

LinkToPageBlock

QuoteBlock

TableRowBlock

ToggleHeading2Block

DataSource 🆕

BreadcrumbBlock

ChildDatabaseBlock

ColumnListBlock

FileBlock

Heading4Block

NumberedListItemBlock

SyncedBlock

ToDoBlock

ToggleHeading3Block

List

BulletedListItemBlock

ChildPageBlock

DividerBlock

Heading1Block

ImageBlock

ParagraphBlock

TableBlock

ToggleBlock

ToggleHeading4Block

Notion Ruby Mapping Public API Reference

</aside>

1. Class methods

self.new(array_of_sub_blocks) → ColumnListBlock

Creates a ColumnListBlock object. Each element of array_of_sub_blocks represents the child Block or Blocks contained in one column and is converted into a ColumnBlock.

Create a column list

column_list = ColumnListBlock.new [
  [
    ParagraphBlock.new("Left column"),
    CalloutBlock.new("Second left block", emoji: "✅"),
  ],
  ParagraphBlock.new("Right column"),
]

<aside> ⚠️

A ColumnListBlock must contain at least two columns. When it is created through the Notion API, each column must contain at least one child Block. Its direct children are ColumnBlock objects; other Block types cannot be appended directly.

</aside>

2. Instance methods

append_block_children(*blocks, position: nil, dry_run: false)

Appends one or more ColumnBlock objects to an existing ColumnListBlock.

column = ColumnBlock.new ParagraphBlock.new("Added column")
column_list.append_block_children column