Notion
GoogleSpreadSheet
💻 フロントエンドエンジニア
いわけんと申します!
34歳から消防士を退職し、独学で学習しエンジニアに転職しました!
エンジニアのスタートはWEB制作
2023年の10月からWEB制作の学習を開始
2024年3月に退職しフリーランスへ
2024年8月に月収50万を達成
2024年11月からフロントエンドエンジニアとして就職
現在→Reactに特化したフロントエンジニアとして活躍中
本ブログはNextJsとNotionAPIを活用し作成しています。
取得するためには、Notionのユーザーであることが前提です。
もし、Notionのユーザーでなかった場合は登録を進めましょう。
https://www.notion.com/ja
早速ですがAPIの取得を進めていきましょう。
https://www.notion.so/my-integrations
ここに入ってみましょう!
Associated workspaceで自身のnotionを選び、save!
次のページでtokenを取得することができます。
コピーします。
次に必要なdatabaseのidを取得します。
データベースを作成したらURLからIDを取得できる。
https://www.notion.so/yourworkspace/〇〇〇〇〇〇〇〇?d=XXXXXXXXXXXX
?dの前、自身のユーザー名の後の〇〇のところがIDです。
これもコピーする
APIとIDを取得できたらGASを使ってnotionと連携します。
開けたら下記のようになります。
ここでコードを書き操作をできるようになります。
下記は今回使用したコードの例です。
実行してできることは、notionのデータベース内に新しくデータを挿入です。
まずは下記の内容をコピーして貼り付けたら実行してみましょう!
//ここにTOKENとIDをそれぞれ入力します。 const NOTION_API_TOKEN = ''; const NOTION_DATABASE_ID = ''; function test() { const formattedDate = Utilities.formatDate(new Date(), "Asia/Tokyo", "yyyy-MM-dd"); const payload = { parent: { database_id: NOTION_DATABASE_ID }, properties: { "name": { title: [{ text: { content: "name" } }] }, "date": { date: { start: formattedDate // ← ISO形式(例:"2025-04-10")を使う! } }, } }; const options = { method: "post", contentType: "application/json", headers: { Authorization: "Bearer " + NOTION_API_TOKEN, "Notion-Version": "2022-06-28" }, payload: JSON.stringify(payload) }; try { const res = UrlFetchApp.fetch("https://api.notion.com/v1/pages", options); Logger.log("成功!"); Logger.log(res.getContentText()); } catch (e) { Logger.log("エラー発生:" + e.message); } }
←ホームに戻る