16.1 子ブロックを追加 (Append block children)
- 既存のブロックまたはページに子ブロックを追加する API の説明はこちらです。
子ブロック追加用ブロック
- この子ブロックの URL を取得してここに貼り付けてください。
ブロック URL
例:
https://www.notion.so/hkob/S16-Create-b50e0bac66a04c549eb68f6aa0fc822a#4f3c3bf99fa544be9970b150696f4290
block_id
は末尾の#
の後ろの 32 桁の 16 進数です。下の赤字の部分にこのblock_id
を記述してください。ヘッダ部分はこれまでの のものと変更はありません。
https://api.notion.com/v1/blocks/ここに上のblock_idを記述/children
- ColumnList ブロックの書式はかなり複雑なので、NotionRubyMapping で作成してみます。
print JSON.pretty_generate(ColumnListBlock.new([ EquationBlock.new('\fbox{fbox}'), EquationBlock.new('\mathbb{MATHBB}'), ]).block_json) { "type": "column_list", "object": "block", "column_list": { "children": [ { "type": "column", "object": "block", "column": { "children": [ { "type": "equation", "object": "block", "equation": { "expression": "\\fbox{fbox}" } } ] } }, { "type": "column", "object": "block", "column": { "children": [ { "type": "equation", "object": "block", "equation": { "expression": "\\mathbb{MATHBB}" } } ] } } ] } }=> nil
- Append block children の BODY は
children
キー配列の中に Property value object を並べます。
{ "children": [ { "type": "column_list", "object": "block", "column_list": { "children": [ { "type": "column", "object": "block", "column": { "children": [ { "type": "equation", "object": "block", "equation": { "expression": "\\fbox{fbox}" } } ] } }, { "type": "column", "object": "block", "column": { "children": [ { "type": "equation", "object": "block", "equation": { "expression": "\\mathbb{MATHBB}" } } ] } } ] } } ] }
- 設定画面は以下のようになります。
16.2 データベースを作成 (Create a database)
- 新規にデータベースを作成する API の説明はこちらです。
この API の SCHEME は以下のように固定です。メソッドは POST に変更になります。
https://api.notion.com/v1/databases
- データベースはこのページの下に作成してみましょう。このページの URL を取得します。
ブロック URL
例: https://www.notion.so/hkob/S16-Create-b50e0bac66a04c549eb68f6aa0fc822a?pvs=4
- URL から page_id を取り出してください。上の赤字の部分です。
b50e0bac66a04c549eb68f6aa0fc822a
Title, Checkbox, Formula プロパティを持つデータベースを作成する BODY は以下のようになります。Create a database の BODY
{ "properties": { "タイトル": { "title": {} }, "完了": { "checkbox": {} }, "現在時刻": { "formula": { "expression": "now()" } } }, "title": [ { "type": "text", "text": { "content": "新規作成データベース" } } ], "parent": { "type": "page_id", "page_id": "この部分に上の page_id を記述してください" } }
- 結果に書かれている database_id を記録しておいてください。下で使います。
例: 6d1dfdb1-3b11-4506-ae2f-b5e005ed76d4
16.3 ページを作成 (Create a page)
- 新規にページを作成する API の説明はこちらです。
- この API の SCHEME も以下のように固定です。メソッドはこれも POST になります。
https://api.notion.com/v1/pages
- タイトルのみを設定する payload は以下のようになります。BODY は以下のようになります。
{ "properties": { "タイトル": { "title": [ { "type": "text", "text": { "content": "新規ページ" } } ] } }, "parent": { "type": "database_id", "database_id": "上に記述した database_id を記述してください" } }
設定画面は以下のようになります。