🤖
GASでNotionを操作するライブラリを作成した
はじめに
Notion APIを使いやすくするライブラリを作成しました。
ライブラリの導入
スクリプトIDはこちら。
1P5ARr7gp69EnBgiNMVEVboO-M-XESgTSycWU2WWBuIvdxtFsYk4MlyG0
現時点の最新はバージョン 3(12月19日 22:27)です。
参考
使い方
例
const NOTION_CONFIG = {
token: '', // token
db_id: {
test: '', // データベースID
},
};
// マネージャークラスのインスタンス化
const notionManager = Notion.initManager(NOTION_CONFIG.token);
// レコードクラスのインスタンス化
const record = Notion.initRecord();
// タイトルの設定
notionRecord.setTitle('name', '新版 市場を創る:バザールからネット取引まで');
// アイコンの設定
notionRecord.setIcon('📗');
// urlプロパティの設定。第1引数はプロパティ名。
notionRecord.setPropertiesUrl('url', 'https://www.amazon.co.jp/dp/4766427831');
// Notionに設定した内容でレコードを作成。
notionManager.createRecord(NOTION_CONFIG.db_id.test, record);
メソッド一覧
ソース
本文の挿入
notionRecord.pushChildrenText('本文だよ');
プロパティの設定
日付
const date = dayjs.dayjs();
notionRecord.setPropertiesDate('日付', date);
// 終了日時がある場合
const startDate = dayjs.dayjs();
const endDate = dayjs.dayjs();
notionRecord.setPropertiesDate('日付', startDate, endDate);
// 時間も含める場合
notionRecord.setPropertiesDatetime('日付', startDate, endDate);
セレクト
notionRecord.setPropertiesSelect('タグ', '本');
数値
notionRecord.setPropertiesNumber('ポイント', 500);
できた機能、まだ実装していない機能はこちら。機能要望はこのprojectに書いてもらえるとなんかするかもしれないです。
Discussion
このライブラリを使ってみたいのですが、イマイチ使い方がわからなくてコメントさせていただきました。
このライブラリを使ったら、Notionにつかったデータベースの内容をスプレッドシートに転記することは可能でしょうか?
可能ですね!
queryというメソッドを用意しているんですが、それを使ってNotionの全レコードを取得することが可能です。
↑の記事が「Notionにあるお知らせDBからお知らせをとってくる」のような使い方をしているので参考にしてみてください。