シンプルテーブルのサポート

開示?
開示?
原題
Simple table support
日付
Jan 7, 2022
Number
38
前のリリース日(最新)
リリース間隔(日)
作成日
Jan 6, 2022 10:14 PM
タグ
ADDED
経過日数
シンプルテーブルが API でサポートされたということで試してみる。まずは概要から。

概要説明

API でシンプルテーブルのサポートを追加しました。

シンプルテーブルとシンプルテーブルの行

テーブルはテーブルの行を子供に持つ親になっています。テーブルは table_row だけを子供に持ちます。
Append block children を通じてテーブルブロックを作った場合、 table は最低でも一つの行( table_row )を持つ必要があります。また、 table_row の中の cells 配列は table_length と同じ長さである必要があります。
tableを取得するためには、 table_row の子供を Retrieve block childrenを使って取得する必要があります。 table ブロックは以下のようなフォーマットされたデーのみをもち、コンテンツは持ちません。
テーブルの例を示します。
{ "type": "table", "table": { "table_width": 3, "has_column_header": false, "has_row_header": false } }
テーブルの行の例を示します。
{ "type": "table_row", "table_row": { "cells": [ [ { "type": "text", "text": { "content": "column 1 content", "link": null }, "annotations": { "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, "plain_text": "column 1 content", "href": null } ], [ { "type": "text", "text": { "content": "column 2 content", "link": null }, "annotations": { "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, "plain_text": "column 2 content", "href": null } ], [ { "type": "text", "text": { "content": "column 3 content", "link": null }, "annotations": { "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, "plain_text": "column 3 content", "href": null } ] ] } }
詳細については、 Block object のドキュメントを読んでください。

検証

いつものように検証しましょう。簡単なので魔法陣でも書いてみましょう。スクリプトはこんな感じです。最低限のテキストだけ設定しています。
curl -X PATCH 'https://api.notion.com/v1/blocks/2b940cbce90848068ad77e91eb17d019/children' \ -H 'Authorization: Bearer '"$NOTION_API_KEY"'' \ -H "Content-Type: application/json" \ -H "Notion-Version: 2021-08-16" \ --data '{ "children": [ { "object": "block", "type": "table", "table": { "table_width": 3, "has_column_header": false, "has_row_header": false, "children": [ { "type": "table_row", "table_row": { "cells": [ [ { "type": "text", "text": { "content": "2" } } ], [ { "type": "text", "text": { "content": "9" } } ], [ { "type": "text", "text": { "content": "4" } } ] ] } }, { "type": "table_row", "table_row": { "cells": [ [ { "type": "text", "text": { "content": "7" } } ], [ { "type": "text", "text": { "content": "5" } } ], [ { "type": "text", "text": { "content": "3" } } ] ] } }, { "type": "table_row", "table_row": { "cells": [ [ { "type": "text", "text": { "content": "6" } } ], [ { "type": "text", "text": { "content": "1" } } ], [ { "type": "text", "text": { "content": "8" } } ] ] } } ] } } ] }'
戻ってきた JSON はこちら
{ "object": "list", "results": [ { "object": "block", "id": "1a9a5f22-4a88-4e3f-b7bf-ed2701d63f59", "created_time": "2022-01-06T22:54:00.000Z", "last_edited_time": "2022-01-06T22:54:00.000Z", "has_children": true, "archived": false, "type": "table", "table": { "table_width": 3, "has_column_header": false, "has_row_header": false } } ], "next_cursor": null, "has_more": false }

実行結果

上のスクリプトでこんな感じの魔法陣が描けました。
2
9
4
7
5
3
6
1
8

🖇️
Notion API Changelog まとめ